2015-06-17 14 views
5

forse dovuto alla mia inesperienza con matchers riposo sicura e hamcrest non sono riuscito a capire come fare questa affermazione correttamenteVerificare valore intero nell'intestazione risposta utilizzando REST-assicurato

when(). 
     get(url). 
    then(). 
     header("my-header", lessThanOrEqualTo("60")); // should compare Integers not Strings 

Una soluzione ovvia sarebbe essere per estrarre il valore dall'intestazione, convertirlo in numero intero e quindi eseguire manualmente l'asserzione. Tuttavia, ciò significherebbe rovinare la bellezza di lavorare con il riposo sicuro. C'è un modo per fare il confronto corretto senza gonfiare il test?

risposta

3

A partire da REST Assured 2.6.0 è possibile fornire una funzione di mappatura come secondo argomento del metodo header. Ad esempio è possibile utilizzare riferimenti al metodo Java 8 come questo:

when(). 
     get(url). 
then(). 
     header("my-header", Integer::parseInt, lessThanOrEqualTo(60));