|
|
@ -26,12 +26,11 @@ import com.jayway.jsonpath.JsonPath;
|
|
|
|
import org.assertj.core.api.AbstractAssert;
|
|
|
|
import org.assertj.core.api.AbstractAssert;
|
|
|
|
import org.assertj.core.api.AbstractBooleanAssert;
|
|
|
|
import org.assertj.core.api.AbstractBooleanAssert;
|
|
|
|
import org.assertj.core.api.AbstractCharSequenceAssert;
|
|
|
|
import org.assertj.core.api.AbstractCharSequenceAssert;
|
|
|
|
import org.assertj.core.api.AbstractListAssert;
|
|
|
|
|
|
|
|
import org.assertj.core.api.AbstractMapAssert;
|
|
|
|
|
|
|
|
import org.assertj.core.api.AbstractObjectAssert;
|
|
|
|
import org.assertj.core.api.AbstractObjectAssert;
|
|
|
|
import org.assertj.core.api.Assert;
|
|
|
|
import org.assertj.core.api.Assert;
|
|
|
|
import org.assertj.core.api.Assertions;
|
|
|
|
import org.assertj.core.api.Assertions;
|
|
|
|
import org.assertj.core.api.ObjectAssert;
|
|
|
|
import org.assertj.core.api.ListAssert;
|
|
|
|
|
|
|
|
import org.assertj.core.api.MapAssert;
|
|
|
|
import org.skyscreamer.jsonassert.JSONCompare;
|
|
|
|
import org.skyscreamer.jsonassert.JSONCompare;
|
|
|
|
import org.skyscreamer.jsonassert.JSONCompareMode;
|
|
|
|
import org.skyscreamer.jsonassert.JSONCompareMode;
|
|
|
|
import org.skyscreamer.jsonassert.JSONCompareResult;
|
|
|
|
import org.skyscreamer.jsonassert.JSONCompareResult;
|
|
|
@ -947,12 +946,13 @@ public class JsonContentAssert extends AbstractAssert<JsonContentAssert, CharSeq
|
|
|
|
* @param expression the {@link JsonPath} expression
|
|
|
|
* @param expression the {@link JsonPath} expression
|
|
|
|
* @param args arguments to parameterize the {@code JsonPath} expression with, using
|
|
|
|
* @param args arguments to parameterize the {@code JsonPath} expression with, using
|
|
|
|
* formatting specifiers defined in {@link String#format(String, Object...)}
|
|
|
|
* formatting specifiers defined in {@link String#format(String, Object...)}
|
|
|
|
|
|
|
|
* @param <E> element type
|
|
|
|
* @return a new assertion object whose object under test is the extracted item
|
|
|
|
* @return a new assertion object whose object under test is the extracted item
|
|
|
|
* @throws AssertionError if the path is not valid or does not result in an array
|
|
|
|
* @throws AssertionError if the path is not valid or does not result in an array
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
@SuppressWarnings("unchecked")
|
|
|
|
@SuppressWarnings("unchecked")
|
|
|
|
public AbstractListAssert<?, ?, Object, ObjectAssert<Object>> extractingJsonPathArrayValue(
|
|
|
|
public <E> ListAssert<E> extractingJsonPathArrayValue(CharSequence expression,
|
|
|
|
CharSequence expression, Object... args) {
|
|
|
|
Object... args) {
|
|
|
|
return Assertions.assertThat(
|
|
|
|
return Assertions.assertThat(
|
|
|
|
extractingJsonPathValue(expression, args, List.class, "an array"));
|
|
|
|
extractingJsonPathValue(expression, args, List.class, "an array"));
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -961,13 +961,15 @@ public class JsonContentAssert extends AbstractAssert<JsonContentAssert, CharSeq
|
|
|
|
* Extract the map value at the given JSON path for further object assertions.
|
|
|
|
* Extract the map value at the given JSON path for further object assertions.
|
|
|
|
* @param expression the {@link JsonPath} expression
|
|
|
|
* @param expression the {@link JsonPath} expression
|
|
|
|
* @param args arguments to parameterize the {@code JsonPath} expression with, using
|
|
|
|
* @param args arguments to parameterize the {@code JsonPath} expression with, using
|
|
|
|
* formatting specifiers defined in {@link String#format(String, Object...)}
|
|
|
|
* @param <K> key type
|
|
|
|
|
|
|
|
* @param <V> value type formatting specifiers defined in
|
|
|
|
|
|
|
|
* {@link String#format(String, Object...)}
|
|
|
|
* @return a new assertion object whose object under test is the extracted item
|
|
|
|
* @return a new assertion object whose object under test is the extracted item
|
|
|
|
* @throws AssertionError if the path is not valid or does not result in a map
|
|
|
|
* @throws AssertionError if the path is not valid or does not result in a map
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
@SuppressWarnings("unchecked")
|
|
|
|
@SuppressWarnings("unchecked")
|
|
|
|
public AbstractMapAssert<?, ?, Object, Object> extractingJsonPathMapValue(
|
|
|
|
public <K, V> MapAssert<K, V> extractingJsonPathMapValue(CharSequence expression,
|
|
|
|
CharSequence expression, Object... args) {
|
|
|
|
Object... args) {
|
|
|
|
return Assertions.assertThat(
|
|
|
|
return Assertions.assertThat(
|
|
|
|
extractingJsonPathValue(expression, args, Map.class, "a map"));
|
|
|
|
extractingJsonPathValue(expression, args, Map.class, "a map"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|