35 lines
1.1 KiB
Java
35 lines
1.1 KiB
Java
|
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;
|
||
|
}
|
||
|
}
|