Files
JEF/src/test/java/jef/model/DbContextSimpleTest.java
2022-08-14 12:41:44 +02:00

52 lines
2.4 KiB
Java

package jef.model;
import jef.DbSet;
import jef.model.annotations.Clazz;
import jef.model.annotations.Id;
import jef.serializable.SerializableObject;
import lombok.Getter;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
class DbContextSimpleTest {
@Test
public void test() {
var mb = ModelBuilder.from(Ctx.class);
assertEquals(1, mb.getEntities().size());
assertEquals("objects1", mb.getEntity(TestClass.class).getName());
assertEquals(5, mb.getEntity(TestClass.class).getFields().size());
assertEquals(1, mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("i")).count());
assertEquals(1, mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("d")).count());
assertEquals(1, mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("f")).count());
assertEquals(1, mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("l")).count());
assertEquals(1, mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("o")).count());
//intrinsic non null
assertEquals(5, mb.getEntity(TestClass.class).getFields().size());
assertTrue(mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("i")).findFirst().get().isNotNull());
assertTrue(mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("d")).findFirst().get().isNotNull());
assertTrue(mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("f")).findFirst().get().isNotNull());
assertTrue(mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("l")).findFirst().get().isNotNull());
assertFalse(mb.getEntity(TestClass.class).getFields().stream().filter(e -> e.getName().equals("o")).findFirst().get().isNotNull());
}
public static class Ctx extends DbContext {
@Clazz(clazz = TestClass.class)
private DbSet<TestClass> objects1;
}
@Getter
public static class TestClass extends SerializableObject {
@Id
public int i = 1;
public Object o = new Object();
public double d;
public float f;
public long l;
}
}