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 2009/02/02 14:08:33 UTC
svn commit: r739987 -
/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextInheritanceTest.java
Author: aadamchik
Date: Mon Feb 2 13:08:33 2009
New Revision: 739987
URL: http://svn.apache.org/viewvc?rev=739987&view=rev
Log:
adding unit tests for rop single table inheritance
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextInheritanceTest.java
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextInheritanceTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextInheritanceTest.java?rev=739987&r1=739986&r2=739987&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextInheritanceTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/CayenneContextInheritanceTest.java Mon Feb 2 13:08:33 2009
@@ -22,6 +22,7 @@
import org.apache.cayenne.access.ClientServerChannel;
import org.apache.cayenne.exp.ExpressionFactory;
+import org.apache.cayenne.query.CapsStrategy;
import org.apache.cayenne.query.SQLTemplate;
import org.apache.cayenne.query.SelectQuery;
import org.apache.cayenne.remote.ClientChannel;
@@ -55,6 +56,28 @@
return new CayenneContext(clientChannel);
}
+ public void testInsertSubclass() {
+ CayenneContext context = createClientContext();
+
+ ClientMtTable1Subclass object = context.newObject(ClientMtTable1Subclass.class);
+ object.setGlobalAttribute1("sub1");
+ object.setServerAttribute1("sa1");
+ object.setSubclassAttribute1("suba1");
+
+ context.commitChanges();
+
+ ObjectContext checkContext = createDataContext();
+ SQLTemplate query = new SQLTemplate(MtTable1.class, "SELECT * FROM MT_TABLE1");
+ query.setColumnNamesCapitalization(CapsStrategy.UPPER);
+ query.setFetchingDataRows(true);
+
+ List<DataRow> rows = checkContext.performQuery(query);
+ assertEquals(1, rows.size());
+ assertEquals("sub1", rows.get(0).get("GLOBAL_ATTRIBUTE1"));
+ assertEquals("sa1", rows.get(0).get("SERVER_ATTRIBUTE1"));
+ assertEquals("suba1", rows.get(0).get("SUBCLASS_ATTRIBUTE1"));
+ }
+
public void testPerformQueryInheritanceLeaf() {
ObjectContext setupContext = createDataContext();
@@ -106,7 +129,7 @@
assertEquals("sa1", ((ClientMtTable1Subclass) objects.get(1))
.getSubclassAttribute1());
}
-
+
public void testPerformQueryWithQualifierInheritanceSuper() {
ObjectContext setupContext = createDataContext();
@@ -126,7 +149,9 @@
CayenneContext context = createClientContext();
SelectQuery query = new SelectQuery(ClientMtTable1.class);
- query.andQualifier(ExpressionFactory.likeExp(ClientMtTable1.SERVER_ATTRIBUTE1_PROPERTY, "X%"));
+ query.andQualifier(ExpressionFactory.likeExp(
+ ClientMtTable1.SERVER_ATTRIBUTE1_PROPERTY,
+ "X%"));
List<ClientMtTable1> objects = context.performQuery(query);
assertEquals(2, objects.size());