Author: aadamchik
Date: Wed Sep 27 07:10:29 2006
New Revision: 450448
URL: http://svn.apache.org/viewvc?view=rev&rev=450448
Log:
CAY-663 extra test case
Modified:
incubator/cayenne/main/trunk/core/cayenne-jdk1.4/src/test/java/org/apache/cayenne/CayenneContextClientChannelEventsTst.java
Modified:
incubator/cayenne/main/trunk/core/cayenne-jdk1.4/src/test/java/org/apache/cayenne/CayenneContextClientChannelEventsTst.java
URL:
http://svn.apache.org/viewvc/incubator/cayenne/main/trunk/core/cayenne-jdk1.4/src/test/java/org/apache/cayenne/CayenneContextClientChannelEventsTst.java?view=diff&rev=450448&r1=450447&r2=450448
==============================================================================
---
incubator/cayenne/main/trunk/core/cayenne-jdk1.4/src/test/java/org/apache/cayenne/CayenneContextClientChannelEventsTst.java
(original)
+++
incubator/cayenne/main/trunk/core/cayenne-jdk1.4/src/test/java/org/apache/cayenne/CayenneContextClientChannelEventsTst.java
Wed Sep 27 07:10:29 2006
@@ -76,6 +76,38 @@
assertFalse(c2.internalGraphManager().hasChanges());
}
+ public void testSyncNewDeletedObject() throws Exception {
+ // this resets snapshot cache...
+ createDataContext();
+ deleteTestData();
+
+ DataChannel serverChannel = new ClientServerChannel(getDomain());
+ ClientChannel clientChannel = new ClientChannel(
+ new LocalConnection(serverChannel),
+ true);
+
+ CayenneContext c1 = new CayenneContext(clientChannel);
+ CayenneContext c2 = new CayenneContext(clientChannel);
+
+ // insert, then delete - this shouldn't propagate via an event.
+ ClientMtTable1 o1 = (ClientMtTable1)
c1.newObject(ClientMtTable1.class);
+ o1.setGlobalAttribute1("X");
+ c1.deleteObject(o1);
+
+ // introduce some other change so that commit can go ahead...
+ ClientMtTable1 o1x = (ClientMtTable1)
c1.newObject(ClientMtTable1.class);
+ o1x.setGlobalAttribute1("Y");
+ c1.commitChanges();
+
+ ClientMtTable1 o2 = (ClientMtTable1) c2.getGraphManager().getNode(
+ o1.getObjectId());
+
+ assertNull(o2);
+
+ assertFalse(c1.internalGraphManager().hasChanges());
+ assertFalse(c2.internalGraphManager().hasChanges());
+ }
+
public void testSyncNewObjectIntoDirtyContext() throws Exception {
// this resets snapshot cache...
createDataContext();