use of org.datanucleus.samples.ann_xml.models.company.Person in project tests by datanucleus.
the class AnnotationPlusXMLTest method testPrimaryKey.
/**
* Test of @PrimaryKey on a field (simple or complex).
*/
public void testPrimaryKey() {
// Department (simple PK)
ClassMetaData cmd = (ClassMetaData) metaDataMgr.getMetaDataForClass(Department.class.getName(), clr);
String prefix = cmd.getFullClassName() + " : ";
assertEquals(prefix + "number of PK members is wrong", 1, cmd.getNoOfPrimaryKeyMembers());
AbstractMemberMetaData fmd = cmd.getMetaDataForMember("name");
assertEquals(prefix + "field should be persistent", FieldPersistenceModifier.PERSISTENT, fmd.getPersistenceModifier());
assertTrue(prefix + "pk is wrong", fmd.isPrimaryKey());
// Person (complex PK)
cmd = (ClassMetaData) metaDataMgr.getMetaDataForClass(Person.class.getName(), clr);
prefix = cmd.getFullClassName() + " : ";
assertEquals(prefix + "number of PK members is wrong", 2, cmd.getNoOfPrimaryKeyMembers());
fmd = cmd.getMetaDataForMember("personNum");
assertEquals(prefix + "field should be persistent", FieldPersistenceModifier.PERSISTENT, fmd.getPersistenceModifier());
assertTrue(prefix + "pk is wrong", fmd.isPrimaryKey());
ColumnMetaData[] colmds = fmd.getColumnMetaData();
assertEquals("Name of first col of pk is incorrect", "PERSON_ID", colmds[0].getName());
fmd = cmd.getMetaDataForMember("globalNum");
assertEquals(prefix + "field should be persistent", FieldPersistenceModifier.PERSISTENT, fmd.getPersistenceModifier());
assertTrue(prefix + "pk is wrong", fmd.isPrimaryKey());
colmds = fmd.getColumnMetaData();
assertEquals("Name of second col of pk is incorrect", "PERSON_GLOB_ID", colmds[0].getName());
}
use of org.datanucleus.samples.ann_xml.models.company.Person in project tests by datanucleus.
the class AnnotationPlusXMLTest method testPersistenceCapable.
/**
* Test of class based JDO annotations reading capability.
*/
public void testPersistenceCapable() {
// Department
ClassMetaData cmd = (ClassMetaData) metaDataMgr.getMetaDataForClass(Department.class.getName(), clr);
String prefix = cmd.getFullClassName() + " : ";
assertTrue(prefix + "detachable is wrong", cmd.isDetachable());
assertEquals(prefix + "identity-type is wrong", IdentityType.APPLICATION, cmd.getIdentityType());
assertFalse(prefix + "embedded-only is wrong", cmd.isEmbeddedOnly());
assertTrue(prefix + "requires-extent is wrong", cmd.isRequiresExtent());
assertNull(prefix + "catalog is wrong", cmd.getCatalog());
assertNull(prefix + "schema is wrong", cmd.getSchema());
assertEquals(prefix + "table is wrong", "DEPARTMENT", cmd.getTable());
assertEquals(prefix + "has incorrect number of persistent fields", 3, cmd.getNoOfManagedMembers());
// Project
// ...
// Person
cmd = (ClassMetaData) metaDataMgr.getMetaDataForClass(Person.class.getName(), clr);
prefix = cmd.getFullClassName() + " : ";
assertFalse(prefix + "detachable is wrong", cmd.isDetachable());
assertEquals(prefix + "identity-type is wrong", IdentityType.APPLICATION, cmd.getIdentityType());
assertEquals(prefix + "objectid-class is wrong", Person.Id.class.getName(), cmd.getObjectidClass());
assertFalse(prefix + "embedded-only is wrong", cmd.isEmbeddedOnly());
assertTrue(prefix + "requires-extent is wrong", cmd.isRequiresExtent());
assertNull(prefix + "catalog is wrong", cmd.getCatalog());
assertNull(prefix + "schema is wrong", cmd.getSchema());
assertEquals(prefix + "table is wrong", "PERSON", cmd.getTable());
assertEquals(prefix + "has incorrect number of persistent fields", 7, cmd.getNoOfManagedMembers());
assertEquals(prefix + "has incorrect number of fields", 10, // two non-persistent
cmd.getNoOfMembers());
// Employee
// ...
}
Aggregations