assertj-json/src/main/java/com/devsoap/json/JsonArrayAssert.java

35 lines
1.1 KiB
Java
Raw Normal View History

2024-10-24 18:59:28 +00:00
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<VALUE_TYPE extends JsonValue> extends AbstractListAssert<JsonArrayAssert<VALUE_TYPE>,
List<VALUE_TYPE>,
VALUE_TYPE, JsonValueAssert<VALUE_TYPE>> {
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<VALUE_TYPE> toAssert(VALUE_TYPE value, String description) {
return new JsonValueAssert<>(fieldName, (JsonValue) value, value);
}
@Override
protected JsonArrayAssert<VALUE_TYPE> newAbstractIterableAssert(Iterable<? extends VALUE_TYPE> iterable) {
//TODO
return null;
}
}