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());