@Test
public void testPersistMultiValue() throws Exception {
DBSession session = sessionFactory.createSession();
EntityBag bag = session.createOrGetBag("testbag");
try {
Entity entity = new SimpleEntity();
entity.addProperty("field1", "value1");
entity.addProperty("field1", "value2");
entity.addProperty("field1", "value3");
entity.addProperty("number", 100L);
entity.addProperty("number", 500L);
bag.addEntity(entity);
String entityId = entity.getInternalId();
entity = bag.getEntity(entityId);
Property property = entity.getProperty("field1");
Assert.assertNotNull(property);
assertEquals("The object should be multivalue", true, property.isMultiValue());
assertEquals("There should be three properties", 3, property.getValues().size());
assertEquals("Unexpected value", "value1", property.getValues().get(0).getValue());
assertEquals("Unexpected value", "value2", property.getValues().get(1).getValue());
assertEquals("Unexpected value", "value3", property.getValues().get(2).getValue());
property = entity.getProperty("number");
assertEquals("The object should be multivalue", true, property.isMultiValue());
assertEquals("There should be three properties", 2, property.getValues().size());
assertEquals("Unexpected value", 100L, property.getValues().get(0).getValue());
assertEquals("Unexpected value", 500L, property.getValues().get(1).getValue());
} finally {
JasDBMain.shutdown();
}
}