LaFee
(Arina)
#1
Добрый день.
Есть BaseTest где указано
.setContentType(ContentType.JSON)
.addHeader("Accept-Language", "en")
и сам тест
someActions.getInfoWithoutContentType(name).
then().
assertThat().
statusCode(415).
Собственно, что нужно указать в тесте в хэдэрэ, чтобы перезатереть ContentType из BaseTest?
Для получения 415 status
Просто header пустой или null не подходит. Какие есть еще варианты?
и посмотрите на раздел Headers (Usage · rest-assured/rest-assured Wiki · GitHub)
В частности
given().
config(RestAssuredConfig.config().headerConfig(headerConfig().overwriteHeadersWithName("x"))).
header("x", "1").
header("x", "2").
when().
get("/something").
Пишут,
This means that only one header, "x: 2", is sent to server.
1 лайк
LaFee
(Arina)
#4
тогда вот так
@Test
public void authWithoutContentType() {
String name = testData.getUserNonExistPhone();
someActions.getInfoWithoutContentType(name).
then().
assertThat().
statusCode(415).
}
public Response getUserNonExistPhone(String name) {
Response response =
given().
header(“Accept-Language”, “”).
body(authBody(name)).
post("/v2/auth");
return response;
}
baseTest был выше
Так он отправляет
/*
Headers: Accept-Language=en
Accept-Language=
=
Accept=/
Content-Type=application/json
*/
А нужно в getUserNonExistPhone сделать такой header, чтобы перезатирал header из baseTest.
Или так сделать не выйдет?
Вопрос, собственно, про этот метод
Что у него внутри, как работает?
LaFee
(Arina)
#6
Вы знаете, все оказалось проще
public Response getWithoutContentType(String name) {
Response response =
given().
contentType(ContentType.TEXT). - эта строка принесла статус 415
body(authBody(name)).
post("/v2/auth");
return response;
}
Спасибо!