Author: aadamchik
Date: Sat Oct 20 23:40:15 2012
New Revision: 1400533
URL: http://svn.apache.org/viewvc?rev=1400533&view=rev
Log:
refactoring redundant test apis
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/AddColumnToModelTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/CreateTableToModelTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropColumnToModelTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropRelationshipToModelTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropTableToModelTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergeCase.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergerFactoryTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetAllowNullToDbTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetNotNullToDbTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetPrimaryKeyToDbTest.java
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/ValueForNullTest.java
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/AddColumnToModelTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/AddColumnToModelTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/AddColumnToModelTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/AddColumnToModelTest.java
Sat Oct 20 23:40:15 2012
@@ -33,7 +33,7 @@ public class AddColumnToModelTest extend
public void testAddColumn() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity = new DbEntity("NEW_TABLE");
@@ -49,8 +49,8 @@ public class AddColumnToModelTest extend
map.addDbEntity(dbEntity);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
ObjEntity objEntity = new ObjEntity("NewTable");
objEntity.setDbEntity(dbEntity);
@@ -76,11 +76,8 @@ public class AddColumnToModelTest extend
assertTrue(token instanceof AddColumnToModel);
execute(token);
assertEquals(1, objEntity.getAttributes().size());
- assertEquals("java.lang.String", objEntity
- .getAttributes()
- .iterator()
- .next()
- .getType());
+ assertEquals("java.lang.String", objEntity.getAttributes().iterator()
+ .next().getType());
// clear up
map.removeObjEntity(objEntity.getName(), true);
@@ -90,8 +87,8 @@ public class AddColumnToModelTest extend
assertNull(map.getDbEntity(dbEntity.getName()));
assertFalse(map.getDbEntities().contains(dbEntity));
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/CreateTableToModelTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/CreateTableToModelTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/CreateTableToModelTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/CreateTableToModelTest.java
Sat Oct 20 23:40:15 2012
@@ -32,7 +32,7 @@ public class CreateTableToModelTest exte
public void testAddTable() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity = new DbEntity("NEW_TABLE");
@@ -55,7 +55,8 @@ public class CreateTableToModelTest exte
if (token.getDirection().isToDb()) {
token = token.createReverse(mergerFactory());
}
- assertTrue(token.getClass().getName(), token instanceof
CreateTableToModel);
+ assertTrue(token.getClass().getName(),
+ token instanceof CreateTableToModel);
execute(token);
@@ -64,29 +65,25 @@ public class CreateTableToModelTest exte
if (candiate.getDbEntity() == null) {
continue;
}
- if
(candiate.getDbEntity().getName().equalsIgnoreCase(dbEntity.getName())) {
+ if (candiate.getDbEntity().getName()
+ .equalsIgnoreCase(dbEntity.getName())) {
objEntity = candiate;
break;
}
}
assertNotNull(objEntity);
- assertEquals(objEntity.getClassName(), map.getDefaultPackage()
- + "."
+ assertEquals(objEntity.getClassName(), map.getDefaultPackage() + "."
+ objEntity.getName());
assertEquals(objEntity.getSuperClassName(),
map.getDefaultSuperclass());
- assertEquals(objEntity.getClientClassName(),
map.getDefaultClientPackage()
- + "."
- + objEntity.getName());
- assertEquals(objEntity.getClientSuperClassName(), map
- .getDefaultClientSuperclass());
+ assertEquals(objEntity.getClientClassName(),
+ map.getDefaultClientPackage() + "." + objEntity.getName());
+ assertEquals(objEntity.getClientSuperClassName(),
+ map.getDefaultClientSuperclass());
assertEquals(1, objEntity.getAttributes().size());
- assertEquals("java.lang.String", objEntity
- .getAttributes()
- .iterator()
- .next()
- .getType());
+ assertEquals("java.lang.String", objEntity.getAttributes().iterator()
+ .next().getType());
// clear up
// fix psql case issue
@@ -98,8 +95,8 @@ public class CreateTableToModelTest exte
assertNull(map.getDbEntity(dbEntity.getName()));
assertFalse(map.getDbEntities().contains(dbEntity));
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropColumnToModelTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropColumnToModelTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropColumnToModelTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropColumnToModelTest.java
Sat Oct 20 23:40:15 2012
@@ -37,7 +37,7 @@ public class DropColumnToModelTest exten
public void testSimpleColumn() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity = new DbEntity("NEW_TABLE");
@@ -53,8 +53,8 @@ public class DropColumnToModelTest exten
map.addDbEntity(dbEntity);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
ObjEntity objEntity = new ObjEntity("NewTable");
objEntity.setDbEntity(dbEntity);
@@ -87,15 +87,15 @@ public class DropColumnToModelTest exten
assertNull(map.getDbEntity(dbEntity.getName()));
assertFalse(map.getDbEntities().contains(dbEntity));
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
public void testRemoveFKColumnWithoutRelationshipInDb() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
dropTableIfPresent(node, "NEW_TABLE2");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity1 = new DbEntity("NEW_TABLE");
@@ -124,8 +124,8 @@ public class DropColumnToModelTest exten
map.addDbEntity(dbEntity2);
- assertTokensAndExecute(node, map, 2, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(2, 0);
+ assertTokensAndExecute(0, 0);
// force drop fk column in db
execute(mergerFactory().createDropColumnToDb(dbEntity2, e2col2));
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropRelationshipToModelTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropRelationshipToModelTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropRelationshipToModelTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropRelationshipToModelTest.java
Sat Oct 20 23:40:15 2012
@@ -38,7 +38,7 @@ public class DropRelationshipToModelTest
dropTableIfPresent(node, "NEW_TABLE");
dropTableIfPresent(node, "NEW_TABLE2");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity1 = new DbEntity("NEW_TABLE");
@@ -83,8 +83,8 @@ public class DropRelationshipToModelTest
assertSame(rel1To2, rel2To1.getReverseRelationship());
assertSame(rel2To1, rel1To2.getReverseRelationship());
- assertTokensAndExecute(node, map, 4, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(4, 0);
+ assertTokensAndExecute(0, 0);
// create ObjEntities
ObjEntity objEntity1 = new ObjEntity("NewTable");
@@ -139,7 +139,8 @@ public class DropRelationshipToModelTest
// try do use the merger to remove the relationship in the model
tokens = createMergeTokens();
assertTokens(tokens, 2, 0);
- // TODO: reversing the following two tokens should also reverse the
order
+ // TODO: reversing the following two tokens should also reverse the
+ // order
MergerToken token0 = tokens.get(0).createReverse(mergerFactory());
MergerToken token1 = tokens.get(1).createReverse(mergerFactory());
assertTrue(token0 instanceof DropColumnToModel);
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropTableToModelTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropTableToModelTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropTableToModelTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/DropTableToModelTest.java
Sat Oct 20 23:40:15 2012
@@ -33,7 +33,7 @@ public class DropTableToModelTest extend
public void testDropTable() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity = new DbEntity("NEW_TABLE");
@@ -49,8 +49,8 @@ public class DropTableToModelTest extend
map.addDbEntity(dbEntity);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
ObjEntity objEntity = new ObjEntity("NewTable");
objEntity.setDbEntity(dbEntity);
@@ -83,7 +83,7 @@ public class DropTableToModelTest extend
assertNull(map.getDbEntity(dbEntity.getName()));
assertFalse(map.getDbEntities().contains(dbEntity));
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
}
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergeCase.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergeCase.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergeCase.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergeCase.java
Sat Oct 20 23:40:15 2012
@@ -40,189 +40,175 @@ import org.apache.cayenne.unit.di.server
public abstract class MergeCase extends ServerCase {
- @Inject
- private DBHelper dbHelper;
+ @Inject
+ private DBHelper dbHelper;
- @Inject
- private ServerRuntime runtime;
+ @Inject
+ private ServerRuntime runtime;
- @Inject
- private UnitDbAdapter accessStackAdapter;
+ @Inject
+ private UnitDbAdapter accessStackAdapter;
- @Inject
- private ServerCaseDataSourceFactory dataSourceFactory;
-
- @Inject
- protected EntityResolver resolver;
-
- @Inject
- protected DataNode node;
-
- protected DataMap map;
-
- private static List<String> TABLE_NAMES = Arrays.asList("ARTIST",
- "PAINTING", "NEW_TABLE", "NEW_TABLE2");
-
- @Override
- protected void setUpAfterInjection() throws Exception {
-
- dbHelper.deleteAll("ARTGROUP");
- dbHelper.deleteAll("PAINTING_INFO");
- dbHelper.deleteAll("PAINTING");
- dbHelper.deleteAll("ARTIST_EXHIBIT");
- dbHelper.deleteAll("ARTIST_GROUP");
- dbHelper.deleteAll("ARTIST");
- dbHelper.deleteAll("EXHIBIT");
- dbHelper.deleteAll("GALLERY");
-
- // this map can't be safely modified in this test, as it is
reset by DI
- // container
- // on every test
- map = runtime.getDataDomain().getDataMap("testmap");
-
- filterDataMap();
-
- List<MergerToken> tokens = createMergeTokens();
- execute(tokens);
-
- assertTokensAndExecute(0, 0);
- }
-
- protected DbMerger createMerger() {
- return new DbMerger() {
-
- @Override
- public boolean includeTableName(String tableName) {
- return
TABLE_NAMES.contains(tableName.toUpperCase());
- }
- };
- }
-
- protected List<MergerToken> createMergeTokens() {
- return createMerger().createMergeTokens(node, map);
- }
-
- /**
- * Remote binary pk {@link DbEntity} for {@link DbAdapter} not
supporting
- * that and so on.
- */
- private void filterDataMap() {
- // copied from AbstractAccessStack.dbEntitiesInInsertOrder
- boolean excludeBinPK = accessStackAdapter.supportsBinaryPK();
-
- if (!excludeBinPK) {
- return;
- }
-
- List<DbEntity> entitiesToRemove = new ArrayList<DbEntity>();
-
- for (DbEntity ent : map.getDbEntities()) {
- for (DbAttribute attr : ent.getAttributes()) {
- // check for BIN PK or FK to BIN Pk
- if (attr.getType() == Types.BINARY
- || attr.getType() ==
Types.VARBINARY
- || attr.getType() ==
Types.LONGVARBINARY) {
-
- if (attr.isPrimaryKey() ||
attr.isForeignKey()) {
- entitiesToRemove.add(ent);
- break;
- }
- }
- }
- }
-
- for (DbEntity e : entitiesToRemove) {
- map.removeDbEntity(e.getName(), true);
- }
- }
-
- protected void execute(List<MergerToken> tokens) throws Exception {
- MergerContext mergerContext = new ExecutingMergerContext(map,
node);
- for (MergerToken tok : tokens) {
- tok.execute(mergerContext);
- }
- }
-
- protected void execute(MergerToken token) throws Exception {
- MergerContext mergerContext = new ExecutingMergerContext(map,
node);
- token.execute(mergerContext);
- }
-
- private void executeSql(String sql) throws Exception {
- Connection conn = dataSourceFactory.getSharedDataSource()
- .getConnection();
-
- try {
- Statement st = conn.createStatement();
-
- try {
- st.execute(sql);
- } finally {
- st.close();
- }
- }
-
- finally {
- conn.close();
- }
- }
-
- protected void assertTokens(List<MergerToken> tokens, int expectedToDb,
- int expectedToModel) {
- int actualToDb = 0;
- int actualToModel = 0;
- for (MergerToken token : tokens) {
- if (token.getDirection().isToDb()) {
- actualToDb++;
- } else if (token.getDirection().isToModel()) {
- actualToModel++;
- }
- }
-
- assertEquals("tokens to db", expectedToDb, actualToDb);
- assertEquals("tokens to model", expectedToModel, actualToModel);
- }
-
- protected void assertTokensAndExecute(DataNode node, DataMap map,
- int expectedToDb, int expectedToModel) {
- List<MergerToken> tokens = createMergeTokens();
-
- assertTokens(tokens, expectedToDb, expectedToModel);
- if (!tokens.isEmpty()) {
- try {
- execute(tokens);
- } catch (Exception e) {
- fail(e.getMessage());
- }
- }
- }
-
- protected void assertTokensAndExecute(int expectedToDb, int
expectedToModel) {
- List<MergerToken> tokens = createMergeTokens();
-
- assertTokens(tokens, expectedToDb, expectedToModel);
- if (!tokens.isEmpty()) {
- try {
- execute(tokens);
- } catch (Exception e) {
- fail(e.getMessage());
- }
- }
- }
-
- protected MergerFactory mergerFactory() {
- return node.getAdapter().mergerFactory();
- }
-
- protected void dropTableIfPresent(DataNode node, String tableName) {
- DbEntity entity = new DbEntity(tableName);
- AbstractToDbToken t = (AbstractToDbToken) mergerFactory()
- .createDropTableToDb(entity);
- try {
- for (String sql : t.createSql(node.getAdapter())) {
- executeSql(sql);
- }
- } catch (Exception e) {
- }
- }
+ @Inject
+ private ServerCaseDataSourceFactory dataSourceFactory;
+
+ @Inject
+ protected EntityResolver resolver;
+
+ @Inject
+ protected DataNode node;
+
+ protected DataMap map;
+
+ private static List<String> TABLE_NAMES = Arrays.asList("ARTIST",
+ "PAINTING", "NEW_TABLE", "NEW_TABLE2");
+
+ @Override
+ protected void setUpAfterInjection() throws Exception {
+
+ dbHelper.deleteAll("ARTGROUP");
+ dbHelper.deleteAll("PAINTING_INFO");
+ dbHelper.deleteAll("PAINTING");
+ dbHelper.deleteAll("ARTIST_EXHIBIT");
+ dbHelper.deleteAll("ARTIST_GROUP");
+ dbHelper.deleteAll("ARTIST");
+ dbHelper.deleteAll("EXHIBIT");
+ dbHelper.deleteAll("GALLERY");
+
+ // this map can't be safely modified in this test, as it is reset by DI
+ // container
+ // on every test
+ map = runtime.getDataDomain().getDataMap("testmap");
+
+ filterDataMap();
+
+ List<MergerToken> tokens = createMergeTokens();
+ execute(tokens);
+
+ assertTokensAndExecute(0, 0);
+ }
+
+ protected DbMerger createMerger() {
+ return new DbMerger() {
+
+ @Override
+ public boolean includeTableName(String tableName) {
+ return TABLE_NAMES.contains(tableName.toUpperCase());
+ }
+ };
+ }
+
+ protected List<MergerToken> createMergeTokens() {
+ return createMerger().createMergeTokens(node, map);
+ }
+
+ /**
+ * Remote binary pk {@link DbEntity} for {@link DbAdapter} not supporting
+ * that and so on.
+ */
+ private void filterDataMap() {
+ // copied from AbstractAccessStack.dbEntitiesInInsertOrder
+ boolean excludeBinPK = accessStackAdapter.supportsBinaryPK();
+
+ if (!excludeBinPK) {
+ return;
+ }
+
+ List<DbEntity> entitiesToRemove = new ArrayList<DbEntity>();
+
+ for (DbEntity ent : map.getDbEntities()) {
+ for (DbAttribute attr : ent.getAttributes()) {
+ // check for BIN PK or FK to BIN Pk
+ if (attr.getType() == Types.BINARY
+ || attr.getType() == Types.VARBINARY
+ || attr.getType() == Types.LONGVARBINARY) {
+
+ if (attr.isPrimaryKey() || attr.isForeignKey()) {
+ entitiesToRemove.add(ent);
+ break;
+ }
+ }
+ }
+ }
+
+ for (DbEntity e : entitiesToRemove) {
+ map.removeDbEntity(e.getName(), true);
+ }
+ }
+
+ protected void execute(List<MergerToken> tokens) throws Exception {
+ MergerContext mergerContext = new ExecutingMergerContext(map, node);
+ for (MergerToken tok : tokens) {
+ tok.execute(mergerContext);
+ }
+ }
+
+ protected void execute(MergerToken token) throws Exception {
+ MergerContext mergerContext = new ExecutingMergerContext(map, node);
+ token.execute(mergerContext);
+ }
+
+ private void executeSql(String sql) throws Exception {
+ Connection conn = dataSourceFactory.getSharedDataSource()
+ .getConnection();
+
+ try {
+ Statement st = conn.createStatement();
+
+ try {
+ st.execute(sql);
+ } finally {
+ st.close();
+ }
+ }
+
+ finally {
+ conn.close();
+ }
+ }
+
+ protected void assertTokens(List<MergerToken> tokens, int expectedToDb,
+ int expectedToModel) {
+ int actualToDb = 0;
+ int actualToModel = 0;
+ for (MergerToken token : tokens) {
+ if (token.getDirection().isToDb()) {
+ actualToDb++;
+ } else if (token.getDirection().isToModel()) {
+ actualToModel++;
+ }
+ }
+
+ assertEquals("tokens to db", expectedToDb, actualToDb);
+ assertEquals("tokens to model", expectedToModel, actualToModel);
+ }
+
+ protected void assertTokensAndExecute(int expectedToDb, int
expectedToModel) {
+ List<MergerToken> tokens = createMergeTokens();
+
+ assertTokens(tokens, expectedToDb, expectedToModel);
+ if (!tokens.isEmpty()) {
+ try {
+ execute(tokens);
+ } catch (Exception e) {
+ fail(e.getMessage());
+ }
+ }
+ }
+
+ protected MergerFactory mergerFactory() {
+ return node.getAdapter().mergerFactory();
+ }
+
+ protected void dropTableIfPresent(DataNode node, String tableName) {
+ DbEntity entity = new DbEntity(tableName);
+ AbstractToDbToken t = (AbstractToDbToken) mergerFactory()
+ .createDropTableToDb(entity);
+ try {
+ for (String sql : t.createSql(node.getAdapter())) {
+ executeSql(sql);
+ }
+ } catch (Exception e) {
+ }
+ }
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergerFactoryTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergerFactoryTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergerFactoryTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/MergerFactoryTest.java
Sat Oct 20 23:40:15 2012
@@ -48,15 +48,15 @@ public class MergerFactoryTest extends M
column.setMandatory(false);
column.setMaxLength(10);
dbEntity.addAttribute(column);
- assertTokensAndExecute(node, map, 1, 0);
+ assertTokensAndExecute(1, 0);
// try merge once more to check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// remove it from model and db
dbEntity.removeAttribute(column.getName());
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
public void testChangeVarcharSizeToDb() throws Exception {
@@ -69,24 +69,24 @@ public class MergerFactoryTest extends M
column.setMandatory(false);
column.setMaxLength(10);
dbEntity.addAttribute(column);
- assertTokensAndExecute(node, map, 1, 0);
+ assertTokensAndExecute(1, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// change size
column.setMaxLength(20);
// merge to db
- assertTokensAndExecute(node, map, 1, 0);
+ assertTokensAndExecute(1, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// clean up
dbEntity.removeAttribute(column.getName());
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
public void testMultipleTokensToDb() throws Exception {
@@ -102,32 +102,32 @@ public class MergerFactoryTest extends M
column2.setMaxLength(10);
dbEntity.addAttribute(column2);
- assertTokensAndExecute(node, map, 2, 0);
+ assertTokensAndExecute(2, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// change size
column1.setMaxLength(20);
column2.setMaxLength(30);
// merge to db
- assertTokensAndExecute(node, map, 2, 0);
+ assertTokensAndExecute(2, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// clean up
dbEntity.removeAttribute(column1.getName());
dbEntity.removeAttribute(column2.getName());
- assertTokensAndExecute(node, map, 2, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(2, 0);
+ assertTokensAndExecute(0, 0);
}
public void testAddTableToDb() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity = new DbEntity("NEW_TABLE");
@@ -143,8 +143,8 @@ public class MergerFactoryTest extends M
map.addDbEntity(dbEntity);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
ObjEntity objEntity = new ObjEntity("NewTable");
objEntity.setDbEntity(dbEntity);
@@ -169,14 +169,14 @@ public class MergerFactoryTest extends M
assertNull(map.getDbEntity(dbEntity.getName()));
assertFalse(map.getDbEntities().contains(dbEntity));
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
public void testAddForeignKeyWithTable() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity = new DbEntity("NEW_TABLE");
@@ -215,15 +215,15 @@ public class MergerFactoryTest extends M
r2.addJoin(new DbJoin(r2, "ARTIST_ID", "ARTIST_ID"));
artistDbEntity.addRelationship(r2);
- assertTokensAndExecute(node, map, 2, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(2, 0);
+ assertTokensAndExecute(0, 0);
// remove relationships
dbEntity.removeRelationship(r1.getName());
artistDbEntity.removeRelationship(r2.getName());
resolver.clearCache();
- assertTokensAndExecute(node, map, 1, 1);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 1);
+ assertTokensAndExecute(0, 0);
// clear up
// map.removeObjEntity(objEntity.getName(), true);
@@ -233,14 +233,14 @@ public class MergerFactoryTest extends M
assertNull(map.getDbEntity(dbEntity.getName()));
assertFalse(map.getDbEntities().contains(dbEntity));
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
public void testAddForeignKeyAfterTable() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity = new DbEntity("NEW_TABLE");
@@ -263,8 +263,8 @@ public class MergerFactoryTest extends M
DbEntity artistDbEntity = map.getDbEntity("ARTIST");
assertNotNull(artistDbEntity);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
// relation from new_table to artist
DbRelationship r1 = new DbRelationship("toArtistR1");
@@ -282,15 +282,15 @@ public class MergerFactoryTest extends M
r2.addJoin(new DbJoin(r2, "ARTIST_ID", "ARTIST_ID"));
artistDbEntity.addRelationship(r2);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
// remove relationships
dbEntity.removeRelationship(r1.getName());
artistDbEntity.removeRelationship(r2.getName());
resolver.clearCache();
- assertTokensAndExecute(node, map, 1, 1);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 1);
+ assertTokensAndExecute(0, 0);
// clear up
// map.removeObjEntity(objEntity.getName(), true);
@@ -300,7 +300,7 @@ public class MergerFactoryTest extends M
assertNull(map.getDbEntity(dbEntity.getName()));
assertFalse(map.getDbEntities().contains(dbEntity));
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetAllowNullToDbTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetAllowNullToDbTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetAllowNullToDbTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetAllowNullToDbTest.java
Sat Oct 20 23:40:15 2012
@@ -40,26 +40,26 @@ public class SetAllowNullToDbTest extend
column.setMandatory(true);
column.setMaxLength(10);
dbEntity.addAttribute(column);
- assertTokensAndExecute(node, map, 2, 0);
+ assertTokensAndExecute(2, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// set null
column.setMandatory(false);
// merge to db
- assertTokensAndExecute(node, map, 1, 0);
+ assertTokensAndExecute(1, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// clean up
}
finally {
dbEntity.removeAttribute(column.getName());
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetNotNullToDbTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetNotNullToDbTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetNotNullToDbTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetNotNullToDbTest.java
Sat Oct 20 23:40:15 2012
@@ -53,24 +53,24 @@ public class SetNotNullToDbTest extends
column.setMandatory(false);
column.setMaxLength(10);
dbEntity.addAttribute(column);
- assertTokensAndExecute(node, map, 1, 0);
+ assertTokensAndExecute(1, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// set not null
column.setMandatory(true);
// merge to db
- assertTokensAndExecute(node, map, 1, 0);
+ assertTokensAndExecute(1, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// clean up
dbEntity.removeAttribute(column.getName());
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetPrimaryKeyToDbTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetPrimaryKeyToDbTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetPrimaryKeyToDbTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/SetPrimaryKeyToDbTest.java
Sat Oct 20 23:40:15 2012
@@ -30,7 +30,7 @@ public class SetPrimaryKeyToDbTest exten
public void test() throws Exception {
dropTableIfPresent(node, "NEW_TABLE");
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
DbEntity dbEntity1 = new DbEntity("NEW_TABLE");
@@ -40,20 +40,20 @@ public class SetPrimaryKeyToDbTest exten
dbEntity1.addAttribute(e1col1);
map.addDbEntity(dbEntity1);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
DbAttribute e1col2 = new DbAttribute("ID2", Types.INTEGER, dbEntity1);
e1col2.setMandatory(true);
dbEntity1.addAttribute(e1col2);
- assertTokensAndExecute(node, map, 2, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(2, 0);
+ assertTokensAndExecute(0, 0);
e1col1.setPrimaryKey(false);
e1col2.setPrimaryKey(true);
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
}
Modified:
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/ValueForNullTest.java
URL:
http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/ValueForNullTest.java?rev=1400533&r1=1400532&r2=1400533&view=diff
==============================================================================
---
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/ValueForNullTest.java
(original)
+++
cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/merge/ValueForNullTest.java
Sat Oct 20 23:40:15 2012
@@ -68,7 +68,7 @@ public class ValueForNullTest extends Me
dbEntity.addAttribute(column);
assertTrue(dbEntity.getAttributes().contains(column));
assertEquals(column, dbEntity.getAttribute(column.getName()));
- assertTokensAndExecute(node, map, 1, 0);
+ assertTokensAndExecute(1, 0);
// need obj attr to be able to query
ObjAttribute objAttr = new ObjAttribute("newcol2");
@@ -76,16 +76,16 @@ public class ValueForNullTest extends Me
objEntity.addAttribute(objAttr);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// set not null
column.setMandatory(true);
// merge to db
- assertTokensAndExecute(node, map, 2, 0);
+ assertTokensAndExecute(2, 0);
// check that is was merged
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(0, 0);
// check values for null
Expression qual = ExpressionFactory.matchExp(
@@ -97,8 +97,8 @@ public class ValueForNullTest extends Me
// clean up
dbEntity.removeAttribute(column.getName());
- assertTokensAndExecute(node, map, 1, 0);
- assertTokensAndExecute(node, map, 0, 0);
+ assertTokensAndExecute(1, 0);
+ assertTokensAndExecute(0, 0);
}
@Override