package com.devsoap.json; import jakarta.json.JsonArray; import jakarta.json.JsonValue; import org.assertj.core.api.AbstractListAssert; import java.util.List; public class JsonArrayAssert extends AbstractListAssert, List, VALUE_TYPE, JsonValueAssert> { private final String fieldName; protected JsonArrayAssert(String fieldName, JsonArray array) { super(array.getValuesAs(jsonValue -> (VALUE_TYPE) jsonValue), JsonArrayAssert.class); this.fieldName = fieldName; } public JsonArrayAssert(String fieldName, VALUE_TYPE value) { super(List.of(value), JsonArrayAssert.class); this.fieldName = fieldName; } @Override protected JsonValueAssert toAssert(VALUE_TYPE value, String description) { return new JsonValueAssert<>(fieldName, (JsonValue) value, value); } @Override protected JsonArrayAssert newAbstractIterableAssert(Iterable iterable) { //TODO return null; } }