0

I have following test code

ObjectNode jsonObject = ..
assertThat(jsonObject.get("level")).isNotNull();
assertThat(jsonObject.get("level").get("object")).isNotNull();
assertThat(jsonObject.get("level").get("object").textValue()).isEqualTo("my value");

I would like to write this in a more fluent way such as

assertThat(jsonObject.get("level")).isNotNull()
    .extracting(jsonNode -> jsonNode.get("object"))
    .isNotNull()
    .extracting(JsonNode::asText)
    .isEqualTo("my value");

It does not seem that extracting() was designed for this. Is there any other more fluent way to write out initial test code?

isADon
  • 3,433
  • 11
  • 35
  • 49

1 Answers1

1

I would give a serious try to https://github.com/lukas-krecan/JsonUnit, it is designed to be json friendly.

Joel Costigliola
  • 6,308
  • 27
  • 35