in computer-test/src/main/java/org/apache/hugegraph/computer/core/graph/value/ListValueTest.java [51:103]
public void testAdd() {
ListValue<IntValue> value1 = new ListValue<>(ValueType.INT);
ListValue<FloatValue> value2 = new ListValue<>(ValueType.FLOAT);
Assert.assertEquals(0, value1.size());
value1.add(new IntValue(101));
value1.add(new IntValue(102));
value1.add(new IntValue(103));
Assert.assertEquals(3, value1.size());
Assert.assertEquals(0, value2.size());
value2.add(new FloatValue(201f));
value2.add(new FloatValue(202f));
Assert.assertEquals(2, value2.size());
ListValue<Value.Tvalue<?>> value3 = new ListValue<>(ValueType.FLOAT);
value3.add(new FloatValue(301f));
Assert.assertThrows(IllegalArgumentException.class, () -> {
value3.add(new IntValue(303));
}, e -> {
Assert.assertContains("Invalid value '303' with type int",
e.getMessage());
Assert.assertContains("expect element with type float",
e.getMessage());
});
Assert.assertThrows(IllegalArgumentException.class, () -> {
value3.add(null);
}, e -> {
Assert.assertContains("Can't add null to list",
e.getMessage());
});
ListValue<Value.Tvalue<?>> value4 = new ListValue<>(ValueType.UNKNOWN);
Assert.assertEquals(ValueType.UNKNOWN, value4.elemType());
value4.add(new IntValue(303));
Assert.assertEquals(ValueType.INT, value4.elemType());
Assert.assertThrows(IllegalArgumentException.class, () -> {
value4.add(new FloatValue(303f));
}, e -> {
Assert.assertContains("expect element with type int",
e.getMessage());
});
Assert.assertThrows(IllegalArgumentException.class, () -> {
value4.add(null);
}, e -> {
Assert.assertContains("Can't add null to list",
e.getMessage());
});
}