Я хочу проверить службу отдыха с помощью Rest Assured, но мой тест завершился неудачно, когда служба возвращает отрицательное нулевое значение.Rest Assured and float negatie zero
Rest Гарантированный Тест:
String methodName="multiply";
float[] operands = {1f,-2.5f,0};
float result = operands[0] * operands[1] * operands[2];
Response response = given().
pathParam("a",operands[0]).
pathParam("b",operands[1]).
pathParam("c",operands[2]).
contentType(JSON).
log().ifValidationFails().
when().
get("/"+methodName+"/{a}/{b}/{c}").
then().
assertThat().statusCode(200).
body("result",equalTo(result));
Ошибка:
java.lang.AssertionError: JSON path result doesn't match.
Expected: <-0.0F>
Actual: 0.0
Результат JSON:
{"result":-0.0}
Почему тест не пройден, когда моя служба остальное возвращает отрицательное нулевое значение?
Я думаю, что проблема заключается в том, как путь к спасению, связанный с безопасностью, должен содержать строку '-0' для плавания. –
С одной стороны, да, с другой стороны, ваша служба не должна возвращать '-0.0f' ... – xenteros
Я думал об этом. Но почему бы не вернуться -0f? Javascript имеет это значение, и мы можем его использовать. Я также возвращаю NaN, +/- Infinity и Rest Assured, тестируя их нормально, и JS может использовать эти значения. –