use of org.apache.cayenne.testdo.relationships_to_one_fk.ToOneFK1 in project cayenne by apache.
the class CDOOneToOneFKIT method testTakeObjectSnapshotDependentFault.
@Test
public void testTakeObjectSnapshotDependentFault() throws Exception {
ToOneFK2 src = context.newObject(ToOneFK2.class);
ToOneFK1 target = context.newObject(ToOneFK1.class);
src.setToOneToFK(target);
context.commitChanges();
ObjectIdQuery refetch = new ObjectIdQuery(src.getObjectId(), false, ObjectIdQuery.CACHE_REFRESH);
ToOneFK2 src2 = (ToOneFK2) Cayenne.objectForQuery(context1, refetch);
assertTrue(src2.readPropertyDirectly("toOneToFK") instanceof Fault);
// test that taking a snapshot does not trigger a fault, and generally works well
context.currentSnapshot(src2);
assertTrue(src2.readPropertyDirectly("toOneToFK") instanceof Fault);
}
use of org.apache.cayenne.testdo.relationships_to_one_fk.ToOneFK1 in project cayenne by apache.
the class CDOOneToOneFKIT method testDelete.
@Test
public void testDelete() throws Exception {
ToOneFK2 src = context.newObject(ToOneFK2.class);
ToOneFK1 target = context.newObject(ToOneFK1.class);
src.setToOneToFK(target);
context.commitChanges();
src.setToOneToFK(null);
context.deleteObjects(target);
context.commitChanges();
// test database data
ObjectIdQuery refetch = new ObjectIdQuery(src.getObjectId(), false, ObjectIdQuery.CACHE_REFRESH);
ToOneFK2 src2 = (ToOneFK2) Cayenne.objectForQuery(context1, refetch);
assertNull(src.getToOneToFK());
assertEquals(src.getObjectId(), src2.getObjectId());
}
use of org.apache.cayenne.testdo.relationships_to_one_fk.ToOneFK1 in project cayenne by apache.
the class CDOOneToOneFKIT method testReplaceNull2.
@Test
public void testReplaceNull2() throws Exception {
ToOneFK2 src = context.newObject(ToOneFK2.class);
context.commitChanges();
ToOneFK1 target = context.newObject(ToOneFK1.class);
// *** TESTING THIS ***
src.setToOneToFK(target);
// test before save
assertSame(target, src.getToOneToFK());
// do save
context.commitChanges();
// test database data
ObjectIdQuery refetch = new ObjectIdQuery(src.getObjectId(), false, ObjectIdQuery.CACHE_REFRESH);
ToOneFK2 src2 = (ToOneFK2) Cayenne.objectForQuery(context1, refetch);
ToOneFK1 target2 = src2.getToOneToFK();
assertNotNull(target2);
assertEquals(src.getObjectId(), src2.getObjectId());
assertEquals(target.getObjectId(), target2.getObjectId());
}
use of org.apache.cayenne.testdo.relationships_to_one_fk.ToOneFK1 in project cayenne by apache.
the class CDOOneToOneFKIT method testNewAdd.
@Test
public void testNewAdd() throws Exception {
ToOneFK2 src = context.newObject(ToOneFK2.class);
ToOneFK1 target = context.newObject(ToOneFK1.class);
// *** TESTING THIS ***
src.setToOneToFK(target);
// test before save
assertSame(target, src.getToOneToFK());
// do save
context.commitChanges();
// test database data
ObjectIdQuery refetch = new ObjectIdQuery(src.getObjectId(), false, ObjectIdQuery.CACHE_REFRESH);
ToOneFK2 src2 = (ToOneFK2) Cayenne.objectForQuery(context1, refetch);
ToOneFK1 target2 = src2.getToOneToFK();
assertNotNull(target2);
assertEquals(src.getObjectId(), src2.getObjectId());
assertEquals(target.getObjectId(), target2.getObjectId());
}
use of org.apache.cayenne.testdo.relationships_to_one_fk.ToOneFK1 in project cayenne by apache.
the class CDOOneToOneFKIT method testReadRelationship.
@Test
public void testReadRelationship() {
ToOneFK2 src = context.newObject(ToOneFK2.class);
ToOneFK1 target = context.newObject(ToOneFK1.class);
src.setToOneToFK(target);
context.commitChanges();
context.invalidateObjects(src, target);
ToOneFK2 src1 = (ToOneFK2) Cayenne.objectForPK(context, src.getObjectId());
assertNotNull(src1.getToOneToFK());
// resolve HOLLOW
assertSame(src1, src1.getToOneToFK().getToPK());
context.invalidateObjects(src1, src1.getToOneToFK());
ToOneFK1 target2 = (ToOneFK1) Cayenne.objectForPK(context, target.getObjectId());
assertNotNull(target2.getToPK());
// resolve HOLLOW
assertSame(target2, target2.getToPK().getToOneToFK());
}
Aggregations