Repository: cayenne Updated Branches: refs/heads/master 3b07f37cd -> 31befb1b9
Cleanup Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/31befb1b Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/31befb1b Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/31befb1b Branch: refs/heads/master Commit: 31befb1b98cbd99402113ff49a128de37037a736 Parents: 3b07f37 Author: Nikita Timofeev <stari...@gmail.com> Authored: Thu Feb 15 17:21:27 2018 +0300 Committer: Nikita Timofeev <stari...@gmail.com> Committed: Thu Feb 15 17:21:27 2018 +0300 ---------------------------------------------------------------------- .../util/DeepMergeOperationInheritanceIT.java | 72 +++++++------------- .../apache/cayenne/util/WeakValueMapTest.java | 10 +-- 2 files changed, 28 insertions(+), 54 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cayenne/blob/31befb1b/cayenne-server/src/test/java/org/apache/cayenne/util/DeepMergeOperationInheritanceIT.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/util/DeepMergeOperationInheritanceIT.java b/cayenne-server/src/test/java/org/apache/cayenne/util/DeepMergeOperationInheritanceIT.java index c31ca91..9d0fc90 100644 --- a/cayenne-server/src/test/java/org/apache/cayenne/util/DeepMergeOperationInheritanceIT.java +++ b/cayenne-server/src/test/java/org/apache/cayenne/util/DeepMergeOperationInheritanceIT.java @@ -19,13 +19,6 @@ package org.apache.cayenne.util; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.sql.SQLException; - import org.apache.cayenne.PersistenceState; import org.apache.cayenne.access.DataContext; import org.apache.cayenne.di.Inject; @@ -34,10 +27,12 @@ import org.apache.cayenne.testdo.inheritance_people.Department; import org.apache.cayenne.testdo.inheritance_people.Employee; import org.apache.cayenne.testdo.inheritance_people.Manager; import org.apache.cayenne.unit.di.DataChannelInterceptor; -import org.apache.cayenne.unit.di.UnitTestClosure; import org.apache.cayenne.unit.di.server.PeopleProjectCase; import org.junit.Test; +import static org.hamcrest.CoreMatchers.*; +import static org.junit.Assert.*; + public class DeepMergeOperationInheritanceIT extends PeopleProjectCase { @Inject @@ -55,8 +50,7 @@ public class DeepMergeOperationInheritanceIT extends PeopleProjectCase { final Department d1 = context.newObject(Department.class); d1.setName("D1"); - // need to do double commit as Ashwood sorter blows on Employees/Departments - // ordering... + // need to do double commit as Ashwood sorter blows on Employees/Departments ordering... context.commitChanges(); Employee e1 = context.newObject(Employee.class); @@ -71,43 +65,24 @@ public class DeepMergeOperationInheritanceIT extends PeopleProjectCase { context.commitChanges(); - // need to make sure source relationship is resolved as a result of some Ashwood - // strangeness... + // need to make sure source relationship is resolved as a result of some Ashwood strangeness... d1.getEmployees().size(); // resolve Employees - context1.performQuery(new SelectQuery(Employee.class)); + context1.performQuery(new SelectQuery<>(Employee.class)); final DeepMergeOperation op = new DeepMergeOperation(context1); - queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() { - - public void execute() { - Department d2 = (Department) op.merge(d1); - assertNotNull(d2); - assertEquals(PersistenceState.COMMITTED, d2.getPersistenceState()); - - for (Employee ex : d2.getEmployees()) { - if ("E2".equals(ex.getName())) { - assertTrue(ex instanceof Manager); - } - else { - assertFalse(ex instanceof Manager); - } - } - } - }); - + assertMergeResult(d1, op); } @Test - public void testDeepMergeNonExistentSubclass() throws SQLException { + public void testDeepMergeNonExistentSubclass() { final Department d1 = context.newObject(Department.class); d1.setName("D1"); - // need to do double commit as Ashwood sorter blows on Employees/Departments - // ordering... + // need to do double commit as Ashwood sorter blows on Employees/Departments ordering... context.commitChanges(); Employee e1 = context.newObject(Employee.class); @@ -122,25 +97,24 @@ public class DeepMergeOperationInheritanceIT extends PeopleProjectCase { context.commitChanges(); - // need to make sure source relationship is resolved as a result of some Ashwood - // strangeness... + // need to make sure source relationship is resolved as a result of some Ashwood strangeness... d1.getEmployees().size(); final DeepMergeOperation op = new DeepMergeOperation(context1); - queryInterceptor.runWithQueriesBlocked(new UnitTestClosure() { - - public void execute() { - Department d2 = (Department) op.merge(d1); - assertNotNull(d2); - assertEquals(PersistenceState.COMMITTED, d2.getPersistenceState()); + assertMergeResult(d1, op); + } - for (Employee ex : d2.getEmployees()) { - if ("E2".equals(ex.getName())) { - assertTrue(ex instanceof Manager); - } - else { - assertFalse(ex instanceof Manager); - } + private void assertMergeResult(Department d1, DeepMergeOperation op) { + queryInterceptor.runWithQueriesBlocked(() -> { + Department d2 = op.merge(d1); + assertNotNull(d2); + assertEquals(PersistenceState.COMMITTED, d2.getPersistenceState()); + + for (Employee ex : d2.getEmployees()) { + if ("E2".equals(ex.getName())) { + assertThat(ex, is(instanceOf(Manager.class))); + } else { + assertThat(ex, is(not(instanceOf(Manager.class)))); } } }); http://git-wip-us.apache.org/repos/asf/cayenne/blob/31befb1b/cayenne-server/src/test/java/org/apache/cayenne/util/WeakValueMapTest.java ---------------------------------------------------------------------- diff --git a/cayenne-server/src/test/java/org/apache/cayenne/util/WeakValueMapTest.java b/cayenne-server/src/test/java/org/apache/cayenne/util/WeakValueMapTest.java index ace6579..6f24c37 100644 --- a/cayenne-server/src/test/java/org/apache/cayenne/util/WeakValueMapTest.java +++ b/cayenne-server/src/test/java/org/apache/cayenne/util/WeakValueMapTest.java @@ -46,7 +46,7 @@ public class WeakValueMapTest { assertFalse(map.containsKey("nonexistent_key1")); assertFalse(map.containsValue(42)); assertNull(map.get("nonexistent_key2")); - assertEquals(new Integer(42), map.getOrDefault("nonexistent_key2", 42)); + assertEquals(Integer.valueOf(42), map.getOrDefault("nonexistent_key2", 42)); assertEquals(0, map.values().size()); assertEquals(0, map.keySet().size()); @@ -62,7 +62,7 @@ public class WeakValueMapTest { assertFalse(map.containsKey("nonexistent_key1")); assertFalse(map.containsValue(42)); assertNull(map.get("nonexistent_key2")); - assertEquals(new Integer(42), map.getOrDefault("nonexistent_key2", 42)); + assertEquals(Integer.valueOf(42), map.getOrDefault("nonexistent_key2", 42)); assertEquals(0, map.values().size()); assertEquals(0, map.keySet().size()); @@ -86,7 +86,7 @@ public class WeakValueMapTest { assertTrue(map.containsValue(42)); assertNull(map.get("nonexistent_key2")); assertEquals(Integer.valueOf(543), map.get("key_3")); - assertEquals(new Integer(123), map.getOrDefault("key_1", 42)); + assertEquals(Integer.valueOf(123), map.getOrDefault("key_1", 42)); assertEquals(data.size(), map.values().size()); assertEquals(data.size(), map.keySet().size()); @@ -107,7 +107,7 @@ public class WeakValueMapTest { Map<String, Integer> map = new WeakValueMap<>(data); map.put("key_4", 44); - assertEquals(new Integer(44), map.get("key_4")); + assertEquals(Integer.valueOf(44), map.get("key_4")); assertEquals(4, map.size()); assertTrue(map.containsKey("key_4")); assertTrue(map.containsValue(44)); @@ -137,7 +137,7 @@ public class WeakValueMapTest { } assertEquals(3, counter); - assertEquals(new Integer(24), map.get("key_2")); + assertEquals(Integer.valueOf(24), map.get("key_2")); } @Test