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 2010/06/21 09:37:42 UTC
svn commit: r956476 - in
/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test:
java/org/apache/cayenne/ java/org/apache/cayenne/remote/
java/org/apache/cayenne/testdo/mt/ java/org/apache/cayenne/testdo/mt/auto/
resources/ resources/dml/
Author: aadamchik
Date: Mon Jun 21 07:37:42 2010
New Revision: 956476
URL: http://svn.apache.org/viewvc?rev=956476&view=rev
Log:
DI-enabled unit tests
* switching more test cases
Added:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPrimitiveTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/ClientMtTablePrimitives.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/MtTablePrimitives.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMtTablePrimitives.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_MtTablePrimitives.java
Removed:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/ClientMtTableBool.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/MtTableBool.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMtTableBool.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_MtTableBool.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/CayenneContextNamedQueryCachingTest.xml
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/CayenneContextPaginatedListCachingTest.xml
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/CayenneContextWithDataContextTest.xml
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextNamedQueryCachingTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPaginatedListCachingTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextWithDataContextTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/LightSuperClassTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/RemoteCayenneCase.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMultiTier.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/cayenne-multi-tier.xml
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/multi-tier.map.xml
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextNamedQueryCachingTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextNamedQueryCachingTest.java?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextNamedQueryCachingTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextNamedQueryCachingTest.java Mon Jun 21 07:37:42 2010
@@ -22,100 +22,102 @@ package org.apache.cayenne;
import java.util.Collections;
import java.util.List;
-import org.apache.cayenne.access.ClientServerChannel;
+import org.apache.cayenne.di.Inject;
import org.apache.cayenne.query.NamedQuery;
-import org.apache.cayenne.remote.ClientChannel;
-import org.apache.cayenne.remote.service.LocalConnection;
-import org.apache.cayenne.unit.AccessStack;
-import org.apache.cayenne.unit.CayenneCase;
-import org.apache.cayenne.unit.CayenneResources;
-import org.apache.cayenne.unit.UnitLocalConnection;
+import org.apache.cayenne.test.jdbc.DBHelper;
+import org.apache.cayenne.test.jdbc.TableHelper;
+import org.apache.cayenne.unit.di.DataChannelInterceptor;
+import org.apache.cayenne.unit.di.UnitTestClosure;
+import org.apache.cayenne.unit.di.client.ClientCase;
+import org.apache.cayenne.unit.di.server.UseServerRuntime;
+
+@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT)
+public class CayenneContextNamedQueryCachingTest extends ClientCase {
+
+ @Inject
+ private DBHelper dbHelper;
-public class CayenneContextNamedQueryCachingTest extends CayenneCase {
+ @Inject
+ private CayenneContext context;
- protected UnitLocalConnection connection;
- protected CayenneContext context;
+ @Inject(ClientCase.ROP_CLIENT_KEY)
+ private DataChannelInterceptor clientServerInterceptor;
- @Override
- protected AccessStack buildAccessStack() {
- return CayenneResources
- .getResources()
- .getAccessStack(MULTI_TIER_ACCESS_STACK);
- }
+ private TableHelper tMtTable1;
@Override
- protected void setUp() throws Exception {
- super.setUp();
+ protected void setUpAfterInjection() throws Exception {
+ dbHelper.deleteAll("MT_TABLE2");
+ dbHelper.deleteAll("MT_TABLE1");
+
+ tMtTable1 = new TableHelper(dbHelper, "MT_TABLE1");
+ tMtTable1.setColumns("TABLE1_ID", "GLOBAL_ATTRIBUTE1", "SERVER_ATTRIBUTE1");
+ }
- ClientServerChannel serverChannel = new ClientServerChannel(getDomain());
- connection = new UnitLocalConnection(
- serverChannel,
- LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel clientChannel = new ClientChannel(connection);
- context = new CayenneContext(clientChannel);
+ protected void createThreeMtTable1sDataSet() throws Exception {
+ tMtTable1.insert(1, "g1", "s1");
+ tMtTable1.insert(2, "g2", "s2");
+ tMtTable1.insert(3, "g3", "s3");
}
public void testLocalCache() throws Exception {
- deleteTestData();
- createTestData("prepare");
+ createThreeMtTable1sDataSet();
- NamedQuery q1 = new NamedQuery("MtQueryWithLocalCache");
+ final NamedQuery q1 = new NamedQuery("MtQueryWithLocalCache");
- List result1 = context.performQuery(q1);
+ final List<?> result1 = context.performQuery(q1);
assertEquals(3, result1.size());
- connection.setBlockingMessages(true);
- try {
- List result2 = context.performQuery(q1);
- assertSame(result1, result2);
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
+
+ public void execute() {
+ List<?> result2 = context.performQuery(q1);
+ assertSame(result1, result2);
+ }
+ });
// refresh
q1.setForceNoCache(true);
- List result3 = context.performQuery(q1);
+ List<?> result3 = context.performQuery(q1);
assertNotSame(result1, result3);
assertEquals(3, result3.size());
}
public void testLocalCacheParameterized() throws Exception {
- deleteTestData();
- createTestData("prepare");
+ createThreeMtTable1sDataSet();
- NamedQuery q1 = new NamedQuery("ParameterizedMtQueryWithLocalCache", Collections
- .singletonMap("g", "g1"));
+ final NamedQuery q1 = new NamedQuery(
+ "ParameterizedMtQueryWithLocalCache",
+ Collections.singletonMap("g", "g1"));
- NamedQuery q2 = new NamedQuery("ParameterizedMtQueryWithLocalCache", Collections
- .singletonMap("g", "g2"));
+ final NamedQuery q2 = new NamedQuery(
+ "ParameterizedMtQueryWithLocalCache",
+ Collections.singletonMap("g", "g2"));
- List result1 = context.performQuery(q1);
+ final List<?> result1 = context.performQuery(q1);
assertEquals(1, result1.size());
- connection.setBlockingMessages(true);
- try {
- List result2 = context.performQuery(q1);
- assertSame(result1, result2);
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
+
+ public void execute() {
+ List<?> result2 = context.performQuery(q1);
+ assertSame(result1, result2);
+ }
+ });
- List result3 = context.performQuery(q2);
+ final List<?> result3 = context.performQuery(q2);
assertNotSame(result1, result3);
assertEquals(1, result3.size());
-
- connection.setBlockingMessages(true);
- try {
- List result4 = context.performQuery(q2);
- assertSame(result3, result4);
-
- List result5 = context.performQuery(q1);
- assertSame(result1, result5);
- }
- finally {
- connection.setBlockingMessages(false);
- }
+
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
+
+ public void execute() {
+ List<?> result4 = context.performQuery(q2);
+ assertSame(result3, result4);
+
+ List<?> result5 = context.performQuery(q1);
+ assertSame(result1, result5);
+ }
+ });
}
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPaginatedListCachingTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPaginatedListCachingTest.java?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPaginatedListCachingTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPaginatedListCachingTest.java Mon Jun 21 07:37:42 2010
@@ -20,55 +20,56 @@ package org.apache.cayenne;
import java.util.List;
-import org.apache.cayenne.access.ClientServerChannel;
+import org.apache.cayenne.di.Inject;
import org.apache.cayenne.query.QueryCacheStrategy;
import org.apache.cayenne.query.SelectQuery;
import org.apache.cayenne.query.SortOrder;
-import org.apache.cayenne.remote.ClientChannel;
-import org.apache.cayenne.remote.service.LocalConnection;
+import org.apache.cayenne.test.jdbc.DBHelper;
+import org.apache.cayenne.test.jdbc.TableHelper;
import org.apache.cayenne.testdo.mt.ClientMtTable1;
-import org.apache.cayenne.unit.AccessStack;
-import org.apache.cayenne.unit.CayenneCase;
-import org.apache.cayenne.unit.CayenneResources;
-import org.apache.cayenne.unit.UnitLocalConnection;
+import org.apache.cayenne.unit.di.client.ClientCase;
+import org.apache.cayenne.unit.di.server.UseServerRuntime;
-public class CayenneContextPaginatedListCachingTest extends CayenneCase {
+@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT)
+public class CayenneContextPaginatedListCachingTest extends ClientCase {
- protected UnitLocalConnection connection;
- protected CayenneContext context;
+ @Inject
+ private DBHelper dbHelper;
- @Override
- protected AccessStack buildAccessStack() {
- return CayenneResources.getResources().getAccessStack(MULTI_TIER_ACCESS_STACK);
- }
+ @Inject
+ private CayenneContext context;
+
+ private TableHelper tMtTable1;
@Override
- protected void setUp() throws Exception {
- super.setUp();
+ protected void setUpAfterInjection() throws Exception {
+ dbHelper.deleteAll("MT_TABLE2");
+ dbHelper.deleteAll("MT_TABLE1");
- ClientServerChannel serverChannel = new ClientServerChannel(getDomain());
- connection = new UnitLocalConnection(
- serverChannel,
- LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel clientChannel = new ClientChannel(connection);
- context = new CayenneContext(clientChannel);
+ tMtTable1 = new TableHelper(dbHelper, "MT_TABLE1");
+ tMtTable1.setColumns("TABLE1_ID", "GLOBAL_ATTRIBUTE1", "SERVER_ATTRIBUTE1");
+ }
+
+ protected void createSevenMtTable1sDataSet() throws Exception {
+ for (int i = 1; i <= 7; i++) {
+ tMtTable1.insert(i, "g" + i, "s" + i);
+ }
}
public void testLocalCache() throws Exception {
- deleteTestData();
- createTestData("prepare");
+ createSevenMtTable1sDataSet();
SelectQuery query = new SelectQuery(ClientMtTable1.class);
query.addOrdering(ClientMtTable1.GLOBAL_ATTRIBUTE1_PROPERTY, SortOrder.ASCENDING);
query.setPageSize(3);
query.setCacheStrategy(QueryCacheStrategy.LOCAL_CACHE);
- List<?> result1 = context.performQuery(query);
+ List<ClientMtTable1> result1 = context.performQuery(query);
assertEquals(7, result1.size());
// ensure we can resolve all objects without a failure...
- for(Object x : result1) {
- ((ClientMtTable1) x).getGlobalAttribute1();
+ for (ClientMtTable1 x : result1) {
+ x.getGlobalAttribute1();
}
}
}
Added: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPrimitiveTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPrimitiveTest.java?rev=956476&view=auto
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPrimitiveTest.java (added)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextPrimitiveTest.java Mon Jun 21 07:37:42 2010
@@ -0,0 +1,90 @@
+/*****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ ****************************************************************/
+package org.apache.cayenne;
+
+import java.util.List;
+
+import org.apache.cayenne.di.Inject;
+import org.apache.cayenne.query.SelectQuery;
+import org.apache.cayenne.query.SortOrder;
+import org.apache.cayenne.test.jdbc.DBHelper;
+import org.apache.cayenne.test.jdbc.TableHelper;
+import org.apache.cayenne.testdo.mt.ClientMtTablePrimitives;
+import org.apache.cayenne.testdo.mt.MtTablePrimitives;
+import org.apache.cayenne.unit.di.client.ClientCase;
+import org.apache.cayenne.unit.di.server.UseServerRuntime;
+
+@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT)
+public class CayenneContextPrimitiveTest extends ClientCase {
+
+ @Inject
+ private CayenneContext context;
+
+ @Inject
+ private DBHelper dbHelper;
+
+ private TableHelper tMtTablePrimitives;
+
+ @Override
+ protected void setUpAfterInjection() throws Exception {
+ dbHelper.deleteAll("MT_TABLE_PRIMITIVES");
+
+ tMtTablePrimitives = new TableHelper(dbHelper, "MT_TABLE_PRIMITIVES");
+ tMtTablePrimitives.setColumns("ID", "BOOLEAN_COLUMN", "INT_COLUMN");
+ }
+
+ private void createTwoPrimitivesDataSet() throws Exception {
+ tMtTablePrimitives.insert(1, true, 0);
+ tMtTablePrimitives.insert(2, false, 5);
+ }
+
+ public void testSelectPrimitives() throws Exception {
+ createTwoPrimitivesDataSet();
+
+ SelectQuery query = new SelectQuery(ClientMtTablePrimitives.class);
+ query.addOrdering("db:" + MtTablePrimitives.ID_PK_COLUMN, SortOrder.ASCENDING);
+
+ List<ClientMtTablePrimitives> results = context.performQuery(query);
+ assertTrue(results.get(0).isBooleanColumn());
+ assertFalse(results.get(1).isBooleanColumn());
+
+ assertEquals(0, results.get(0).getIntColumn());
+ assertEquals(5, results.get(1).getIntColumn());
+ }
+
+ public void testCommitChangesPrimitives() throws Exception {
+
+ ClientMtTablePrimitives object = context.newObject(ClientMtTablePrimitives.class);
+
+ object.setBooleanColumn(true);
+ object.setIntColumn(3);
+
+ context.commitChanges();
+
+ assertTrue(tMtTablePrimitives.getBoolean("BOOLEAN_COLUMN"));
+ assertEquals(3, tMtTablePrimitives.getInt("INT_COLUMN"));
+
+ object.setBooleanColumn(false);
+ object.setIntColumn(8);
+ context.commitChanges();
+
+ assertFalse(tMtTablePrimitives.getBoolean("BOOLEAN_COLUMN"));
+ assertEquals(8, tMtTablePrimitives.getInt("INT_COLUMN"));
+ }
+}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextWithDataContextTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextWithDataContextTest.java?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextWithDataContextTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextWithDataContextTest.java Mon Jun 21 07:37:42 2010
@@ -24,149 +24,104 @@ import java.util.List;
import org.apache.cayenne.access.ClientServerChannel;
import org.apache.cayenne.access.DataContext;
-import org.apache.cayenne.access.DataDomain;
+import org.apache.cayenne.di.Inject;
import org.apache.cayenne.map.LifecycleEvent;
import org.apache.cayenne.query.ObjectIdQuery;
import org.apache.cayenne.query.QueryCacheStrategy;
import org.apache.cayenne.query.SelectQuery;
import org.apache.cayenne.query.SortOrder;
import org.apache.cayenne.reflect.LifecycleCallbackRegistry;
-import org.apache.cayenne.remote.ClientChannel;
-import org.apache.cayenne.remote.ClientConnection;
import org.apache.cayenne.remote.RemoteIncrementalFaultList;
-import org.apache.cayenne.remote.service.LocalConnection;
+import org.apache.cayenne.test.jdbc.DBHelper;
+import org.apache.cayenne.test.jdbc.TableHelper;
import org.apache.cayenne.testdo.mt.ClientMtMeaningfulPk;
import org.apache.cayenne.testdo.mt.ClientMtReflexive;
import org.apache.cayenne.testdo.mt.ClientMtTable1;
import org.apache.cayenne.testdo.mt.ClientMtTable2;
-import org.apache.cayenne.testdo.mt.ClientMtTableBool;
import org.apache.cayenne.testdo.mt.MtReflexive;
import org.apache.cayenne.testdo.mt.MtTable1;
-import org.apache.cayenne.testdo.mt.MtTableBool;
-import org.apache.cayenne.unit.AccessStack;
-import org.apache.cayenne.unit.CayenneCase;
-import org.apache.cayenne.unit.CayenneResources;
-import org.apache.cayenne.unit.UnitLocalConnection;
+import org.apache.cayenne.unit.di.DataChannelInterceptor;
+import org.apache.cayenne.unit.di.UnitTestClosure;
+import org.apache.cayenne.unit.di.client.ClientCase;
+import org.apache.cayenne.unit.di.server.UseServerRuntime;
-public class CayenneContextWithDataContextTest extends CayenneCase {
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- deleteTestData();
- }
+@UseServerRuntime(ClientCase.MULTI_TIER_PROJECT)
+public class CayenneContextWithDataContextTest extends ClientCase {
- @Override
- protected AccessStack buildAccessStack() {
- return CayenneResources.getResources().getAccessStack(MULTI_TIER_ACCESS_STACK);
- }
+ @Inject
+ private CayenneContext clientContext;
- public void testLocalCacheStaysLocal() {
+ @Inject
+ private DBHelper dbHelper;
- DataContext context = createDataContext();
- ClientServerChannel clientServerChannel = new ClientServerChannel(context);
- UnitLocalConnection connection = new UnitLocalConnection(
- clientServerChannel,
- LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext clientContext = new CayenneContext(channel);
+ @Inject(ClientCase.ROP_CLIENT_KEY)
+ private DataChannelInterceptor clientServerInterceptor;
- SelectQuery query = new SelectQuery(ClientMtTable1.class);
- query.setCacheStrategy(QueryCacheStrategy.LOCAL_CACHE);
+ @Inject
+ private ClientServerChannel clientServerChannel;
- assertEquals(0, clientContext.getQueryCache().size());
- assertEquals(0, context.getQueryCache().size());
+ private TableHelper tMtTable1;
+ private TableHelper tMtTable2;
- List<?> results = clientContext.performQuery(query);
-
- assertEquals(1, clientContext.getQueryCache().size());
- assertSame(results, clientContext.getQueryCache().get(
- query.getMetaData(clientContext.getEntityResolver())));
-
- assertEquals(0, context.getQueryCache().size());
- }
+ private TableHelper tMtMeaningfulPK;
- public void testSelectPrimitives() {
- insertValue();
- DataContext context = createDataContext();
- ClientServerChannel clientServerChannel = new ClientServerChannel(context);
- UnitLocalConnection connection = new UnitLocalConnection(
- clientServerChannel,
- LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext clientContext = new CayenneContext(channel);
+ @Override
+ protected void setUpAfterInjection() throws Exception {
+ dbHelper.deleteAll("MT_TABLE2");
+ dbHelper.deleteAll("MT_TABLE1");
- SelectQuery query = new SelectQuery(ClientMtTableBool.class);
- query.addOrdering("db:" + MtTableBool.ID_PK_COLUMN, SortOrder.ASCENDING);
+ tMtTable1 = new TableHelper(dbHelper, "MT_TABLE1");
+ tMtTable1.setColumns("TABLE1_ID", "GLOBAL_ATTRIBUTE1", "SERVER_ATTRIBUTE1");
- List<ClientMtTableBool> results = clientContext.performQuery(query);
- assertTrue(results.get(1).isBlablacheck());
- assertFalse(results.get(4).isBlablacheck());
+ tMtTable2 = new TableHelper(dbHelper, "MT_TABLE2");
+ tMtTable2.setColumns("TABLE2_ID", "TABLE1_ID", "GLOBAL_ATTRIBUTE");
- assertEquals(1, results.get(1).getNumber());
- assertEquals(5, results.get(5).getNumber());
+ tMtMeaningfulPK = new TableHelper(dbHelper, "MT_MEANINGFUL_PK");
+ tMtMeaningfulPK.setColumns("PK");
}
- public void testCommitChangesPrimitives() {
-
- DataContext dataContext = createDataContext();
-
- ClientConnection connection = new LocalConnection(new ClientServerChannel(
- getDomain()));
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
- ClientMtTableBool obj = context.newObject(ClientMtTableBool.class);
-
- obj.setBlablacheck(true);
- obj.setNumber(3);
+ private void deleteAndCreateTwoMeaningfulPKsDataSet() throws Exception {
+ tMtMeaningfulPK.deleteAll();
+ tMtMeaningfulPK.insert("A");
+ tMtMeaningfulPK.insert("B");
+ }
- context.commitChanges();
+ private void createTwoMtTable1sAnd2sDataSet() throws Exception {
+ tMtTable1.insert(1, "g1", "s1");
+ tMtTable1.insert(2, "g2", "s2");
- SelectQuery query = new SelectQuery(MtTableBool.class);
- List<MtTableBool> results = dataContext.performQuery(query);
+ tMtTable2.insert(1, 1, "g1");
+ tMtTable2.insert(2, 1, "g2");
+ }
- assertTrue(results.get(0).isBlablacheck());
- assertEquals(3, results.get(0).getNumber());
+ private void createEightMtTable1s() throws Exception {
+ for (int i = 1; i <= 8; i++) {
+ tMtTable1.insert(i, "g" + i, "s" + i);
+ }
+ }
- obj.setBlablacheck(false);
- obj.setNumber(8);
- context.commitChanges();
+ public void testLocalCacheStaysLocal() {
- query = new SelectQuery(MtTableBool.class);
- results = dataContext.performQuery(query);
+ DataContext serverContext = (DataContext) clientServerChannel.getParentChannel();
- assertFalse(results.get(0).isBlablacheck());
- assertEquals(8, results.get(0).getNumber());
+ SelectQuery query = new SelectQuery(ClientMtTable1.class);
+ query.setCacheStrategy(QueryCacheStrategy.LOCAL_CACHE);
- }
+ assertEquals(0, clientContext.getQueryCache().size());
+ assertEquals(0, serverContext.getQueryCache().size());
- public void insertValue() {
- DataContext context = createDataContext();
+ List<?> results = clientContext.performQuery(query);
- MtTableBool obj;
+ assertEquals(1, clientContext.getQueryCache().size());
+ assertSame(results, clientContext.getQueryCache().get(
+ query.getMetaData(clientContext.getEntityResolver())));
- for (int i = 0; i < 6; i++) {
- if (i < 3) {
- obj = context.newObject(MtTableBool.class);
- obj.setBlablacheck(true);
- obj.setNumber(i);
- context.commitChanges();
- }
- else {
- obj = context.newObject(MtTableBool.class);
- obj.setBlablacheck(false);
- obj.setNumber(i);
- context.commitChanges();
- }
- }
+ assertEquals(0, serverContext.getQueryCache().size());
}
public void testPostAddCallback() throws Exception {
- ClientServerChannel csChannel = new ClientServerChannel(getDomain());
-
- // an exception was triggered within POST_LOAD callback
- LifecycleCallbackRegistry callbackRegistry = csChannel
+ LifecycleCallbackRegistry callbackRegistry = clientServerChannel
.getEntityResolver()
.getCallbackRegistry();
@@ -197,19 +152,14 @@ public class CayenneContextWithDataConte
public void preUpdate(Object entity) {
}
- public void prePersist(Object entity) {
- }
+ public void prePersist(Object entity) {
+ }
});
- ClientConnection connection = new LocalConnection(csChannel);
- ClientChannel channel = new ClientChannel(connection);
-
- CayenneContext context = new CayenneContext(channel);
-
- context.newObject(ClientMtTable1.class);
+ clientContext.newObject(ClientMtTable1.class);
assertFalse(flag[0]);
- context.commitChanges();
+ clientContext.commitChanges();
assertTrue(flag[0]);
}
finally {
@@ -217,23 +167,11 @@ public class CayenneContextWithDataConte
}
}
- class TestClientServerChannel extends ClientServerChannel {
-
- TestClientServerChannel(DataDomain domain) {
- super(domain);
- }
-
- public ObjectContext getServerContext() {
- return serverContext;
- }
- }
-
public void testPostAddOnObjectCallback() throws Exception {
- TestClientServerChannel csChannel = new TestClientServerChannel(getDomain());
+ DataContext serverContext = (DataContext) clientServerChannel.getParentChannel();
- // an exception was triggered within POST_LOAD callback
- LifecycleCallbackRegistry callbackRegistry = csChannel
+ LifecycleCallbackRegistry callbackRegistry = serverContext
.getEntityResolver()
.getCallbackRegistry();
@@ -243,21 +181,14 @@ public class CayenneContextWithDataConte
MtTable1.class,
"prePersistMethod");
- ClientConnection connection = new LocalConnection(csChannel);
- ClientChannel channel = new ClientChannel(connection);
-
- CayenneContext context = new CayenneContext(channel);
-
- Persistent clientObject = context.newObject(ClientMtTable1.class);
-
- context.commitChanges();
+ Persistent clientObject = clientContext.newObject(ClientMtTable1.class);
+ clientContext.commitChanges();
// find peer
- MtTable1 peer = (MtTable1) csChannel
- .getServerContext()
- .getGraphManager()
- .getNode(clientObject.getObjectId());
+ MtTable1 peer = (MtTable1) serverContext.getGraphManager().getNode(
+ clientObject.getObjectId());
+ assertNotNull(peer);
assertTrue(peer.isPrePersisted());
}
finally {
@@ -267,10 +198,8 @@ public class CayenneContextWithDataConte
public void testPreRemoveCallback() throws Exception {
- ClientServerChannel csChannel = new ClientServerChannel(getDomain());
-
// an exception was triggered within POST_LOAD callback
- LifecycleCallbackRegistry callbackRegistry = csChannel
+ LifecycleCallbackRegistry callbackRegistry = clientServerChannel
.getEntityResolver()
.getCallbackRegistry();
@@ -301,23 +230,18 @@ public class CayenneContextWithDataConte
public void preUpdate(Object entity) {
}
- public void prePersist(Object entity) {
- }
+ public void prePersist(Object entity) {
+ }
});
- ClientConnection connection = new LocalConnection(csChannel);
- ClientChannel channel = new ClientChannel(connection);
-
- CayenneContext context = new CayenneContext(channel);
-
- ClientMtTable1 object = context.newObject(ClientMtTable1.class);
+ ClientMtTable1 object = clientContext.newObject(ClientMtTable1.class);
assertFalse(flag[0]);
- context.commitChanges();
+ clientContext.commitChanges();
assertFalse(flag[0]);
- context.deleteObject(object);
- context.commitChanges();
+ clientContext.deleteObject(object);
+ clientContext.commitChanges();
assertTrue(flag[0]);
}
finally {
@@ -327,12 +251,8 @@ public class CayenneContextWithDataConte
public void testCAY830() throws Exception {
- deleteTestData();
-
- ClientServerChannel csChannel = new ClientServerChannel(getDomain());
-
// an exception was triggered within POST_LOAD callback
- LifecycleCallbackRegistry callbackRegistry = csChannel
+ LifecycleCallbackRegistry callbackRegistry = clientServerChannel
.getEntityResolver()
.getCallbackRegistry();
@@ -360,26 +280,21 @@ public class CayenneContextWithDataConte
public void preUpdate(Object entity) {
}
- public void prePersist(Object entity) {
- }
+ public void prePersist(Object entity) {
+ }
});
- ClientConnection connection = new LocalConnection(csChannel);
- ClientChannel channel = new ClientChannel(connection);
-
- CayenneContext context = new CayenneContext(channel);
-
- ClientMtReflexive o1 = context.newObject(ClientMtReflexive.class);
+ ClientMtReflexive o1 = clientContext.newObject(ClientMtReflexive.class);
o1.setName("parent");
- ClientMtReflexive o2 = context.newObject(ClientMtReflexive.class);
+ ClientMtReflexive o2 = clientContext.newObject(ClientMtReflexive.class);
o2.setName("child");
o2.setToParent(o1);
- context.commitChanges();
+ clientContext.commitChanges();
- context.deleteObject(o1);
- context.deleteObject(o2);
- context.commitChanges();
+ clientContext.deleteObject(o1);
+ clientContext.deleteObject(o2);
+ clientContext.commitChanges();
// per CAY-830 an exception is thrown here
}
finally {
@@ -388,45 +303,31 @@ public class CayenneContextWithDataConte
}
public void testRollbackChanges() throws Exception {
- ClientConnection connection = new LocalConnection(new ClientServerChannel(
- getDomain()));
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
-
- ClientMtTable1 o = context.newObject(ClientMtTable1.class);
+ ClientMtTable1 o = clientContext.newObject(ClientMtTable1.class);
o.setGlobalAttribute1("1");
- context.commitChanges();
+ clientContext.commitChanges();
assertEquals("1", o.getGlobalAttribute1());
o.setGlobalAttribute1("2");
assertEquals("2", o.getGlobalAttribute1());
- context.rollbackChanges();
-
- // CAY-1103 - uncommenting this assertion demonstrates the problem
- // assertEquals("1", o.getGlobalAttribute1());
+ clientContext.rollbackChanges();
- assertTrue(context.modifiedObjects().isEmpty());
+ assertEquals("1", o.getGlobalAttribute1());
+ assertTrue(clientContext.modifiedObjects().isEmpty());
}
public void testCreateFault() throws Exception {
- createTestData("prepare");
+ tMtTable1.insert(1, "g1", "s1");
- // must attach to the real channel...
- ClientConnection connection = new LocalConnection(new ClientServerChannel(
- getDomain()));
- ClientChannel channel = new ClientChannel(connection);
-
- CayenneContext context = new CayenneContext(channel);
- ObjectId id = new ObjectId("MtTable1", MtTable1.TABLE1_ID_PK_COLUMN, new Integer(
- 1));
+ ObjectId id = new ObjectId("MtTable1", MtTable1.TABLE1_ID_PK_COLUMN, 1);
- Object fault = context.createFault(id);
+ Object fault = clientContext.createFault(id);
assertTrue(fault instanceof ClientMtTable1);
ClientMtTable1 o = (ClientMtTable1) fault;
assertEquals(PersistenceState.HOLLOW, o.getPersistenceState());
- assertSame(context, o.getObjectContext());
+ assertSame(clientContext, o.getObjectContext());
assertNull(o.getGlobalAttribute1Direct());
// make sure we haven't tripped the fault yet
@@ -438,21 +339,11 @@ public class CayenneContextWithDataConte
}
public void testCreateBadFault() throws Exception {
- deleteTestData();
- createTestData("prepare");
-
- // this clears domain cache
- createDataContext();
-
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()), LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
+ tMtTable1.insert(1, "g1", "s1");
- ObjectId id = new ObjectId("MtTable1", MtTable1.TABLE1_ID_PK_COLUMN, new Integer(
- 2));
+ ObjectId id = new ObjectId("MtTable1", MtTable1.TABLE1_ID_PK_COLUMN, 2);
- Object fault = context.createFault(id);
+ Object fault = clientContext.createFault(id);
assertTrue(fault instanceof ClientMtTable1);
ClientMtTable1 o = (ClientMtTable1) fault;
@@ -468,213 +359,173 @@ public class CayenneContextWithDataConte
}
public void testMeaningfulPK() throws Exception {
- createTestData("testMeaningfulPK");
+ deleteAndCreateTwoMeaningfulPKsDataSet();
SelectQuery query = new SelectQuery(ClientMtMeaningfulPk.class);
query.addOrdering(ClientMtMeaningfulPk.PK_PROPERTY, SortOrder.DESCENDING);
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()), LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
-
- List results = context.performQuery(query);
+ List<?> results = clientContext.performQuery(query);
assertEquals(2, results.size());
}
public void testPrefetchingToOne() throws Exception {
- createTestData("testPrefetching");
+ createTwoMtTable1sAnd2sDataSet();
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()), LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
-
- ObjectId prefetchedId = new ObjectId(
+ final ObjectId prefetchedId = new ObjectId(
"MtTable1",
MtTable1.TABLE1_ID_PK_COLUMN,
- new Integer(1));
+ 1);
SelectQuery q = new SelectQuery(ClientMtTable2.class);
q.addOrdering(ClientMtTable2.GLOBAL_ATTRIBUTE_PROPERTY, SortOrder.ASCENDING);
q.addPrefetch(ClientMtTable2.TABLE1_PROPERTY);
- List results = context.performQuery(q);
+ final List<ClientMtTable2> results = clientContext.performQuery(q);
- connection.setBlockingMessages(true);
- try {
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
- assertEquals(2, results.size());
- Iterator it = results.iterator();
- while (it.hasNext()) {
- ClientMtTable2 o = (ClientMtTable2) it.next();
- assertEquals(PersistenceState.COMMITTED, o.getPersistenceState());
- assertSame(context, o.getObjectContext());
+ public void execute() {
+ assertEquals(2, results.size());
- ClientMtTable1 o1 = o.getTable1();
- assertNotNull(o1);
- assertEquals(PersistenceState.COMMITTED, o1.getPersistenceState());
- assertSame(context, o1.getObjectContext());
- assertEquals(prefetchedId, o1.getObjectId());
+ for (ClientMtTable2 o : results) {
+ assertEquals(PersistenceState.COMMITTED, o.getPersistenceState());
+ assertSame(clientContext, o.getObjectContext());
+
+ ClientMtTable1 o1 = o.getTable1();
+ assertNotNull(o1);
+ assertEquals(PersistenceState.COMMITTED, o1.getPersistenceState());
+ assertSame(clientContext, o1.getObjectContext());
+ assertEquals(prefetchedId, o1.getObjectId());
+ }
}
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ });
}
public void testPrefetchingToOneNull() throws Exception {
- createTestData("testPrefetchingToOneNull");
-
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()), LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
+ tMtTable2.insert(15, null, "g3");
SelectQuery q = new SelectQuery(ClientMtTable2.class);
q.addPrefetch(ClientMtTable2.TABLE1_PROPERTY);
- List results = context.performQuery(q);
+ final List<ClientMtTable2> results = clientContext.performQuery(q);
- connection.setBlockingMessages(true);
- try {
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
- assertEquals(1, results.size());
+ public void execute() {
- ClientMtTable2 o = (ClientMtTable2) results.get(0);
- assertEquals(PersistenceState.COMMITTED, o.getPersistenceState());
- assertSame(context, o.getObjectContext());
+ assertEquals(1, results.size());
- assertNull(o.getTable1());
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ ClientMtTable2 o = results.get(0);
+ assertEquals(PersistenceState.COMMITTED, o.getPersistenceState());
+ assertSame(clientContext, o.getObjectContext());
+
+ assertNull(o.getTable1());
+ }
+ });
}
public void testPrefetchingToMany() throws Exception {
- createTestData("testPrefetching");
-
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()), LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
+ createTwoMtTable1sAnd2sDataSet();
SelectQuery q = new SelectQuery(ClientMtTable1.class);
q.addOrdering(ClientMtTable1.GLOBAL_ATTRIBUTE1_PROPERTY, SortOrder.ASCENDING);
q.addPrefetch(ClientMtTable1.TABLE2ARRAY_PROPERTY);
- List results = context.performQuery(q);
+ final List<ClientMtTable1> results = clientContext.performQuery(q);
- connection.setBlockingMessages(true);
- try {
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
- ClientMtTable1 o1 = (ClientMtTable1) results.get(0);
- assertEquals(PersistenceState.COMMITTED, o1.getPersistenceState());
- assertSame(context, o1.getObjectContext());
-
- List children1 = o1.getTable2Array();
-
- assertEquals(2, children1.size());
- Iterator it = children1.iterator();
- while (it.hasNext()) {
- ClientMtTable2 o = (ClientMtTable2) it.next();
- assertEquals(PersistenceState.COMMITTED, o.getPersistenceState());
- assertSame(context, o.getObjectContext());
+ public void execute() {
- // TODO: fixme...
- // assertEquals(o1, o.getTable1());
+ ClientMtTable1 o1 = results.get(0);
+ assertEquals(PersistenceState.COMMITTED, o1.getPersistenceState());
+ assertSame(clientContext, o1.getObjectContext());
+
+ List<?> children1 = o1.getTable2Array();
+
+ assertEquals(2, children1.size());
+ Iterator<?> it = children1.iterator();
+ while (it.hasNext()) {
+ ClientMtTable2 o = (ClientMtTable2) it.next();
+ assertEquals(PersistenceState.COMMITTED, o.getPersistenceState());
+ assertSame(clientContext, o.getObjectContext());
+
+ // TODO: fixme... reverse relationship is not connected and will
+ // cause a fetch
+ // assertEquals(o1, o.getTable1());
+ }
}
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ });
}
public void testPerformPaginatedQuery() throws Exception {
- deleteTestData();
- createTestData("testPerformPaginatedQuery");
-
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()), LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
+ createEightMtTable1s();
SelectQuery query = new SelectQuery(ClientMtTable1.class);
query.setPageSize(5);
- List objects = context.performQuery(query);
+ List<ClientMtTable1> objects = clientContext.performQuery(query);
assertNotNull(objects);
assertTrue(objects instanceof RemoteIncrementalFaultList);
}
public void testPrefetchingToManyEmpty() throws Exception {
- createTestData("testPrefetching");
-
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()), LocalConnection.HESSIAN_SERIALIZATION);
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
+ createTwoMtTable1sAnd2sDataSet();
SelectQuery q = new SelectQuery(ClientMtTable1.class);
q.addOrdering(ClientMtTable1.GLOBAL_ATTRIBUTE1_PROPERTY, SortOrder.ASCENDING);
q.addPrefetch(ClientMtTable1.TABLE2ARRAY_PROPERTY);
- List results = context.performQuery(q);
+ final List<ClientMtTable1> results = clientContext.performQuery(q);
- connection.setBlockingMessages(true);
- try {
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
- ClientMtTable1 o2 = (ClientMtTable1) results.get(1);
- assertEquals(PersistenceState.COMMITTED, o2.getPersistenceState());
- assertSame(context, o2.getObjectContext());
-
- List children2 = o2.getTable2Array();
- assertFalse(((ValueHolder) children2).isFault());
- assertEquals(0, children2.size());
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ public void execute() {
+ ClientMtTable1 o2 = results.get(1);
+ assertEquals(PersistenceState.COMMITTED, o2.getPersistenceState());
+ assertSame(clientContext, o2.getObjectContext());
+
+ List<ClientMtTable2> children2 = o2.getTable2Array();
+ assertFalse(((ValueHolder) children2).isFault());
+ assertEquals(0, children2.size());
+ }
+ });
}
public void testOIDQueryInterception() throws Exception {
- deleteTestData();
-
- UnitLocalConnection connection = new UnitLocalConnection(new ClientServerChannel(
- getDomain()));
- ClientChannel channel = new ClientChannel(connection);
- CayenneContext context = new CayenneContext(channel);
-
- ClientMtTable1 o = context.newObject(ClientMtTable1.class);
+ final ClientMtTable1 o = clientContext.newObject(ClientMtTable1.class);
o.setGlobalAttribute1("aaa");
// fetch new
- ObjectIdQuery q1 = new ObjectIdQuery(o.getObjectId(), false, ObjectIdQuery.CACHE);
-
- connection.setBlockingMessages(true);
- try {
- List objects = context.performQuery(q1);
- assertEquals(1, objects.size());
- assertSame(o, objects.get(0));
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ final ObjectIdQuery q1 = new ObjectIdQuery(
+ o.getObjectId(),
+ false,
+ ObjectIdQuery.CACHE);
+
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
+
+ public void execute() {
+ List<?> objects = clientContext.performQuery(q1);
+ assertEquals(1, objects.size());
+ assertSame(o, objects.get(0));
+ }
+ });
- context.commitChanges();
+ clientContext.commitChanges();
// fetch committed
- ObjectIdQuery q2 = new ObjectIdQuery(o.getObjectId(), false, ObjectIdQuery.CACHE);
-
- connection.setBlockingMessages(true);
- try {
- List objects = context.performQuery(q2);
- assertEquals(1, objects.size());
- assertSame(o, objects.get(0));
- }
- finally {
- connection.setBlockingMessages(false);
- }
+ final ObjectIdQuery q2 = new ObjectIdQuery(
+ o.getObjectId(),
+ false,
+ ObjectIdQuery.CACHE);
+
+ clientServerInterceptor.runWithQueriesBlocked(new UnitTestClosure() {
+
+ public void execute() {
+ List<?> objects = clientContext.performQuery(q2);
+ assertEquals(1, objects.size());
+ assertSame(o, objects.get(0));
+ }
+ });
}
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/LightSuperClassTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/LightSuperClassTest.java?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/LightSuperClassTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/LightSuperClassTest.java Mon Jun 21 07:37:42 2010
@@ -25,7 +25,7 @@ import org.apache.cayenne.testdo.persist
import org.apache.cayenne.testdo.persistent.Country;
public class LightSuperClassTest extends PersistentCase {
-
+
public void testServer() throws Exception {
deleteTestData();
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/RemoteCayenneCase.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/RemoteCayenneCase.java?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/RemoteCayenneCase.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/remote/RemoteCayenneCase.java Mon Jun 21 07:37:42 2010
@@ -30,7 +30,7 @@ import org.apache.cayenne.unit.UnitLocal
/**
* JUnit case to test ROP functionality
*/
-public abstract class RemoteCayenneCase extends CayenneCase {
+public abstract class RemoteCayenneCase extends CayenneCase {
protected CayenneContext context;
protected DataContext parentDataContext;
Added: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/ClientMtTablePrimitives.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/ClientMtTablePrimitives.java?rev=956476&view=auto
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/ClientMtTablePrimitives.java (added)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/ClientMtTablePrimitives.java Mon Jun 21 07:37:42 2010
@@ -0,0 +1,10 @@
+package org.apache.cayenne.testdo.mt;
+
+import org.apache.cayenne.testdo.mt.auto._ClientMtTablePrimitives;
+
+/**
+ * A persistent class mapped as "MtTablePrimitives" Cayenne entity.
+ */
+public class ClientMtTablePrimitives extends _ClientMtTablePrimitives {
+
+}
Added: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/MtTablePrimitives.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/MtTablePrimitives.java?rev=956476&view=auto
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/MtTablePrimitives.java (added)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/MtTablePrimitives.java Mon Jun 21 07:37:42 2010
@@ -0,0 +1,7 @@
+package org.apache.cayenne.testdo.mt;
+
+import org.apache.cayenne.testdo.mt.auto._MtTablePrimitives;
+
+public class MtTablePrimitives extends _MtTablePrimitives {
+
+}
Added: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMtTablePrimitives.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMtTablePrimitives.java?rev=956476&view=auto
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMtTablePrimitives.java (added)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMtTablePrimitives.java Mon Jun 21 07:37:42 2010
@@ -0,0 +1,60 @@
+package org.apache.cayenne.testdo.mt.auto;
+
+import org.apache.cayenne.PersistentObject;
+
+/**
+ * A generated persistent class mapped as "MtTablePrimitives" Cayenne entity. It is a good idea to
+ * avoid changing this class manually, since it will be overwritten next time code is
+ * regenerated. If you need to make any customizations, put them in a subclass.
+ */
+public abstract class _ClientMtTablePrimitives extends PersistentObject {
+
+ public static final String BOOLEAN_COLUMN_PROPERTY = "booleanColumn";
+ public static final String INT_COLUMN_PROPERTY = "intColumn";
+
+ protected boolean booleanColumn;
+ protected int intColumn;
+
+ public boolean isBooleanColumn() {
+ if(objectContext != null) {
+ objectContext.prepareForAccess(this, "booleanColumn", false);
+ }
+
+ return booleanColumn;
+ }
+ public void setBooleanColumn(boolean booleanColumn) {
+ if(objectContext != null) {
+ objectContext.prepareForAccess(this, "booleanColumn", false);
+ }
+
+ Object oldValue = this.booleanColumn;
+ this.booleanColumn = booleanColumn;
+
+ // notify objectContext about simple property change
+ if(objectContext != null) {
+ objectContext.propertyChanged(this, "booleanColumn", oldValue, booleanColumn);
+ }
+ }
+
+ public int getIntColumn() {
+ if(objectContext != null) {
+ objectContext.prepareForAccess(this, "intColumn", false);
+ }
+
+ return intColumn;
+ }
+ public void setIntColumn(int intColumn) {
+ if(objectContext != null) {
+ objectContext.prepareForAccess(this, "intColumn", false);
+ }
+
+ Object oldValue = this.intColumn;
+ this.intColumn = intColumn;
+
+ // notify objectContext about simple property change
+ if(objectContext != null) {
+ objectContext.propertyChanged(this, "intColumn", oldValue, intColumn);
+ }
+ }
+
+}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMultiTier.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMultiTier.java?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMultiTier.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_ClientMultiTier.java Mon Jun 21 07:37:42 2010
@@ -3,7 +3,6 @@ package org.apache.cayenne.testdo.mt.aut
import java.util.List;
import org.apache.cayenne.ObjectContext;
-import org.apache.cayenne.PersistentObject;
import org.apache.cayenne.query.NamedQuery;
import org.apache.cayenne.testdo.mt.ClientMtTable1;
Added: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_MtTablePrimitives.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_MtTablePrimitives.java?rev=956476&view=auto
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_MtTablePrimitives.java (added)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/testdo/mt/auto/_MtTablePrimitives.java Mon Jun 21 07:37:42 2010
@@ -0,0 +1,34 @@
+package org.apache.cayenne.testdo.mt.auto;
+
+import org.apache.cayenne.CayenneDataObject;
+
+/**
+ * Class _MtTablePrimitives was generated by Cayenne.
+ * It is probably a good idea to avoid changing this class manually,
+ * since it may be overwritten next time code is regenerated.
+ * If you need to make any customizations, please use subclass.
+ */
+public abstract class _MtTablePrimitives extends CayenneDataObject {
+
+ public static final String BOOLEAN_COLUMN_PROPERTY = "booleanColumn";
+ public static final String INT_COLUMN_PROPERTY = "intColumn";
+
+ public static final String ID_PK_COLUMN = "ID";
+
+ public void setBooleanColumn(boolean booleanColumn) {
+ writeProperty("booleanColumn", booleanColumn);
+ }
+ public boolean isBooleanColumn() {
+ Boolean value = (Boolean)readProperty("booleanColumn");
+ return (value != null) ? value.booleanValue() : false;
+ }
+
+ public void setIntColumn(int intColumn) {
+ writeProperty("intColumn", intColumn);
+ }
+ public int getIntColumn() {
+ Object value = readProperty("intColumn");
+ return (value != null) ? (Integer) value : 0;
+ }
+
+}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/cayenne-multi-tier.xml
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/cayenne-multi-tier.xml?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/cayenne-multi-tier.xml (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/cayenne-multi-tier.xml Mon Jun 21 07:37:42 2010
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<domain project-version="6">
<map name="multi-tier"/>
-</domain>
\ No newline at end of file
+</domain>
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/multi-tier.map.xml
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/multi-tier.map.xml?rev=956476&r1=956475&r2=956476&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/multi-tier.map.xml (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/multi-tier.map.xml Mon Jun 21 07:37:42 2010
@@ -81,10 +81,10 @@
<db-entity name="MT_TABLE5">
<db-attribute name="ID" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
</db-entity>
- <db-entity name="MT_TABLE_BOOL">
+ <db-entity name="MT_TABLE_PRIMITIVES">
<db-attribute name="BOOLEAN_COLUMN" type="BOOLEAN"/>
<db-attribute name="ID" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
- <db-attribute name="NUMERIC_COLUMN" type="INTEGER"/>
+ <db-attribute name="INT_COLUMN" type="INTEGER"/>
</db-entity>
<db-entity name="MT_TOONE_DEP">
<db-attribute name="ID" type="INTEGER" isPrimaryKey="true" isMandatory="true"/>
@@ -143,9 +143,9 @@
</obj-entity>
<obj-entity name="MtTable5" className="org.apache.cayenne.testdo.mt.MtTable5" clientClassName="org.apache.cayenne.testdo.mt.ClientMtTable5" dbEntityName="MT_TABLE5">
</obj-entity>
- <obj-entity name="MtTableBool" className="org.apache.cayenne.testdo.mt.MtTableBool" clientClassName="org.apache.cayenne.testdo.mt.ClientMtTableBool" dbEntityName="MT_TABLE_BOOL">
- <obj-attribute name="blablacheck" type="boolean" db-attribute-path="BOOLEAN_COLUMN"/>
- <obj-attribute name="number" type="int" db-attribute-path="NUMERIC_COLUMN"/>
+ <obj-entity name="MtTablePrimitives" className="org.apache.cayenne.testdo.mt.MtTablePrimitives" clientClassName="org.apache.cayenne.testdo.mt.ClientMtTablePrimitives" dbEntityName="MT_TABLE_PRIMITIVES">
+ <obj-attribute name="booleanColumn" type="boolean" db-attribute-path="BOOLEAN_COLUMN"/>
+ <obj-attribute name="intColumn" type="int" db-attribute-path="INT_COLUMN"/>
</obj-entity>
<obj-entity name="MtTooneDep" className="org.apache.cayenne.testdo.mt.MtTooneDep" clientClassName="org.apache.cayenne.testdo.mt.ClientMtTooneDep" dbEntityName="MT_TOONE_DEP">
</obj-entity>