You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2011/02/25 16:15:44 UTC
svn commit: r1074573 -
/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataDomainCallbacksTest.java
Author: aadamchik
Date: Fri Feb 25 15:15:42 2011
New Revision: 1074573
URL: http://svn.apache.org/viewvc?rev=1074573&view=rev
Log:
adding callback unit test
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataDomainCallbacksTest.java
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataDomainCallbacksTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataDomainCallbacksTest.java?rev=1074573&r1=1074572&r2=1074573&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataDomainCallbacksTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataDomainCallbacksTest.java Fri Feb 25 15:15:42 2011
@@ -204,6 +204,39 @@ public class DataDomainCallbacksTest ext
assertSame(a1, listener.getPublicCalledbackEntity());
}
+ public void testPostLoad_LocalObject() throws Exception {
+ LifecycleCallbackRegistry registry = getDomain()
+ .getEntityResolver()
+ .getCallbackRegistry();
+
+ ObjectContext context = createDataContext();
+
+ Artist a1 = context.newObject(Artist.class);
+ a1.setArtistName("XX");
+ context.commitChanges();
+
+ registry.addListener(LifecycleEvent.POST_LOAD, Artist.class, "postLoadCallback");
+ MockCallingBackListener listener = new MockCallingBackListener();
+ registry.addListener(
+ LifecycleEvent.POST_LOAD,
+ Artist.class,
+ listener,
+ "publicCallback");
+
+ // reset context and read related object
+ context = createDataContext();
+
+ Artist a2 = (Artist) context.localObject(a1.getObjectId(), null);
+
+ assertEquals(PersistenceState.HOLLOW, a2.getPersistenceState());
+ assertEquals(0, a2.getPostLoaded());
+ assertNull(listener.getPublicCalledbackEntity());
+
+ a2.getArtistName();
+ assertEquals(1, a2.getPostLoaded());
+ assertSame(a2, listener.getPublicCalledbackEntity());
+ }
+
public void testPreUpdate() {
LifecycleCallbackRegistry registry = getDomain()