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/05/22 19:14:09 UTC

svn commit: r1126099 - /cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsPeopleTest.java

Author: aadamchik
Date: Sun May 22 17:14:08 2011
New Revision: 1126099

URL: http://svn.apache.org/viewvc?rev=1126099&view=rev
Log:
unit test refactoring

porting test to DI

Modified:
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsPeopleTest.java

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsPeopleTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsPeopleTest.java?rev=1126099&r1=1126098&r2=1126099&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsPeopleTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsPeopleTest.java Sun May 22 17:14:08 2011
@@ -18,26 +18,55 @@
  ****************************************************************/
 package org.apache.cayenne.access;
 
+import java.sql.Types;
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
 
 import org.apache.cayenne.ObjectContext;
+import org.apache.cayenne.di.Inject;
 import org.apache.cayenne.query.EJBQLQuery;
-import org.apache.cayenne.query.SQLTemplate;
+import org.apache.cayenne.test.jdbc.DBHelper;
+import org.apache.cayenne.test.jdbc.TableHelper;
 import org.apache.cayenne.testdo.inherit.Address;
 import org.apache.cayenne.testdo.inherit.Department;
 import org.apache.cayenne.testdo.inherit.Manager;
-import org.apache.cayenne.unit.PeopleCase;
+import org.apache.cayenne.unit.di.server.ServerCase;
+import org.apache.cayenne.unit.di.server.UseServerRuntime;
 
-public class DataContextEJBQLConditionsPeopleTest extends PeopleCase {
+@UseServerRuntime(ServerCase.PEOPLE_PROJECT)
+public class DataContextEJBQLConditionsPeopleTest extends ServerCase {
+
+    @Inject
+    private DBHelper dbHelper;
+
+    @Inject
+    private ObjectContext context;
 
     @Override
-    protected void setUp() throws Exception {
-        deleteTestData();
+    protected void setUpAfterInjection() throws Exception {
+
+        TableHelper tPerson = new TableHelper(dbHelper, "PERSON");
+        tPerson.setColumns(
+                "PERSON_ID",
+                "NAME",
+                "PERSON_TYPE",
+                "SALARY",
+                "CLIENT_COMPANY_ID",
+                "DEPARTMENT_ID");
+
+        // manually break circular deps
+        tPerson.update().set("DEPARTMENT_ID", null, Types.INTEGER).execute();
+
+        dbHelper.deleteAll("ADDRESS");
+        dbHelper.deleteAll("DEPARTMENT");
+        dbHelper.deleteAll("PERSON_NOTES");
+        dbHelper.deleteAll("PERSON");
+        dbHelper.deleteAll("CLIENT_COMPANY");
+
+        // TODO: use TableHelper to create test data
 
-        ObjectContext context = createDataContext();
         Department d1 = context.newObject(Department.class);
         d1.setName("d1");
 
@@ -83,22 +112,11 @@ public class DataContextEJBQLConditionsP
         context.commitChanges();
     }
 
-    @Override
-    protected void tearDown() throws Exception {
-        // help in cleaning up relationship cycles...
-        ObjectContext context = createDataContext();
-        context.performGenericQuery(new SQLTemplate(
-                Department.class,
-                "update DEPARTMENT set MANAGER_ID = NULL"));
-    }
-
     public void testCollectionMemberOfId() throws Exception {
 
         String ejbql = "SELECT DISTINCT m FROM Manager m JOIN m.managedDepartments d"
                 + " WHERE m MEMBER d.employees";
 
-        ObjectContext context = createDataContext();
-
         EJBQLQuery query = new EJBQLQuery(ejbql);
         List<?> objects = context.performQuery(query);
         assertEquals(2, objects.size());
@@ -119,8 +137,6 @@ public class DataContextEJBQLConditionsP
         String ejbql = "SELECT DISTINCT m FROM Manager m JOIN m.managedDepartments d"
                 + " WHERE m NOT MEMBER d.employees";
 
-        ObjectContext context = createDataContext();
-
         EJBQLQuery query = new EJBQLQuery(ejbql);
         List<?> objects = context.performQuery(query);
         assertEquals(1, objects.size());
@@ -142,8 +158,6 @@ public class DataContextEJBQLConditionsP
                 + " FROM Address a JOIN a.toEmployee m JOIN m.toDepartment d"
                 + " WHERE m NOT MEMBER d.employees";
 
-        ObjectContext context = createDataContext();
-
         EJBQLQuery query = new EJBQLQuery(ejbql);
         List<?> objects = context.performQuery(query);
         assertEquals(0, objects.size());