Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCedric Notot2012-05-10 10:37:32 -0400
committerCedric Notot2012-05-10 10:37:32 -0400
commit2c3b4638c8d246df956865de9a20f51a694ceb7e (patch)
treeb9646b3a8848ae3d1699e19be9d2f8e0632ce1b3 /plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req
parente8f147e951df2eeb4f4a61701538a03989c9e14e (diff)
downloadorg.eclipse.emf.compare-2c3b4638c8d246df956865de9a20f51a694ceb7e.tar.gz
org.eclipse.emf.compare-2c3b4638c8d246df956865de9a20f51a694ceb7e.tar.xz
org.eclipse.emf.compare-2c3b4638c8d246df956865de9a20f51a694ceb7e.zip
Add tests for requirement computing, in 3-way comparison
Diffstat (limited to 'plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req')
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/ReqComputingTest.java336
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/ReqInputData.java264
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/ancestor.nodes9
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/right.nodes9
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/ancestor.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/ancestor.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/ancestor.nodes9
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/right.nodes9
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/ancestor.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/left.nodes8
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/right.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/ancestor.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/left.nodes8
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/right.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/ancestor.nodes12
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/left.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/right.nodes12
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/ancestor.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/left.nodes2
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/right.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/ancestor.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/left.nodes2
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/ancestor.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/left.nodes4
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/ancestor.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/left.nodes4
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/ancestor.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/right.nodes9
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/ancestor.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/ancestor.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/ancestor.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/left.nodes5
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/right.nodes9
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/ancestor.nodes8
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/left.nodes8
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/right.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/ancestor.nodes8
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/left.nodes8
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/right.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/ancestor.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/left.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/right.nodes12
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/ancestor.nodes2
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/left.nodes2
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/right.nodes10
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/ancestor.nodes2
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/left.nodes2
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/ancestor.nodes4
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/left.nodes4
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/ancestor.nodes4
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/left.nodes4
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/right.nodes6
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/useCases13
69 files changed, 994 insertions, 63 deletions
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/ReqComputingTest.java b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/ReqComputingTest.java
index b460aba94..15d4e07ac 100644
--- a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/ReqComputingTest.java
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/ReqComputingTest.java
@@ -35,7 +35,8 @@ public class ReqComputingTest {
final Resource left = input.getA1Left();
final Resource right = input.getA1Right();
- testAB1(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testAB1(TestKind.DELETE, comparison);
}
@Test
@@ -43,8 +44,8 @@ public class ReqComputingTest {
final Resource left = input.getA2Left();
final Resource right = input.getA2Right();
- testAB2(left, right, TestKind.DELETE);
-
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testAB2(TestKind.DELETE, comparison);
}
@Test
@@ -52,7 +53,8 @@ public class ReqComputingTest {
final Resource left = input.getA3Left();
final Resource right = input.getA3Right();
- testAB3(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testAB3(TestKind.DELETE, comparison);
}
@Test
@@ -60,8 +62,8 @@ public class ReqComputingTest {
final Resource left = input.getA4Left();
final Resource right = input.getA4Right();
- testAB4(left, right, TestKind.DELETE);
-
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testAB4(TestKind.DELETE, comparison);
}
@Test
@@ -69,8 +71,8 @@ public class ReqComputingTest {
final Resource left = input.getA5Left();
final Resource right = input.getA5Right();
- testAB5(left, right, TestKind.DELETE);
-
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testAB5(TestKind.DELETE, comparison);
}
@Test
@@ -78,7 +80,8 @@ public class ReqComputingTest {
final Resource left = input.getA6Left();
final Resource right = input.getA6Right();
- testAB6(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testAB6(TestKind.DELETE, comparison);
}
@@ -87,7 +90,8 @@ public class ReqComputingTest {
final Resource left = input.getA1Left();
final Resource right = input.getA1Right();
- testAB1(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testAB1(TestKind.ADD, comparison);
}
@Test
@@ -95,7 +99,8 @@ public class ReqComputingTest {
final Resource left = input.getA2Left();
final Resource right = input.getA2Right();
- testAB2(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testAB2(TestKind.ADD, comparison);
}
@Test
@@ -103,7 +108,8 @@ public class ReqComputingTest {
final Resource left = input.getA3Left();
final Resource right = input.getA3Right();
- testAB3(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testAB3(TestKind.ADD, comparison);
}
@Test
@@ -111,7 +117,8 @@ public class ReqComputingTest {
final Resource left = input.getA4Left();
final Resource right = input.getA4Right();
- testAB4(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testAB4(TestKind.ADD, comparison);
}
@Test
@@ -119,7 +126,8 @@ public class ReqComputingTest {
final Resource left = input.getA5Left();
final Resource right = input.getA5Right();
- testAB5(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testAB5(TestKind.ADD, comparison);
}
@Test
@@ -127,7 +135,8 @@ public class ReqComputingTest {
final Resource left = input.getA6Left();
final Resource right = input.getA6Right();
- testAB6(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testAB6(TestKind.ADD, comparison);
}
@Test
@@ -135,7 +144,8 @@ public class ReqComputingTest {
final Resource left = input.getC1Left();
final Resource right = input.getC1Right();
- testCD1(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testCD1(TestKind.DELETE, comparison);
}
@Test
@@ -143,7 +153,8 @@ public class ReqComputingTest {
final Resource left = input.getC2Left();
final Resource right = input.getC2Right();
- testCD2(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testCD2(TestKind.DELETE, comparison);
}
@Test
@@ -151,7 +162,8 @@ public class ReqComputingTest {
final Resource left = input.getC3Left();
final Resource right = input.getC3Right();
- testCD3(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testCD3(TestKind.DELETE, comparison);
}
@Test
@@ -159,7 +171,8 @@ public class ReqComputingTest {
final Resource left = input.getC4Left();
final Resource right = input.getC4Right();
- testCD4(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testCD4(TestKind.DELETE, comparison);
}
@Test
@@ -167,7 +180,8 @@ public class ReqComputingTest {
final Resource left = input.getC5Left();
final Resource right = input.getC5Right();
- testCD5(left, right, TestKind.DELETE);
+ final Comparison comparison = EMFCompare.compare(left, right);
+ testCD5(TestKind.DELETE, comparison);
}
@Test
@@ -175,7 +189,8 @@ public class ReqComputingTest {
final Resource left = input.getC1Left();
final Resource right = input.getC1Right();
- testCD1(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testCD1(TestKind.ADD, comparison);
}
@Test
@@ -183,7 +198,8 @@ public class ReqComputingTest {
final Resource left = input.getC2Left();
final Resource right = input.getC2Right();
- testCD2(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testCD2(TestKind.ADD, comparison);
}
@Test
@@ -191,7 +207,8 @@ public class ReqComputingTest {
final Resource left = input.getC3Left();
final Resource right = input.getC3Right();
- testCD3(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testCD3(TestKind.ADD, comparison);
}
@Test
@@ -199,7 +216,8 @@ public class ReqComputingTest {
final Resource left = input.getC4Left();
final Resource right = input.getC4Right();
- testCD4(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testCD4(TestKind.ADD, comparison);
}
@Test
@@ -207,12 +225,231 @@ public class ReqComputingTest {
final Resource left = input.getC5Left();
final Resource right = input.getC5Right();
- testCD5(right, left, TestKind.ADD);
+ final Comparison comparison = EMFCompare.compare(right, left);
+ testCD5(TestKind.ADD, comparison);
}
- private static void testAB1(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
+ @Test
+ public void testE1UseCase1() throws IOException {
+ final Resource left = input.getE1Left();
+ final Resource right = input.getE1Right();
+ final Resource ancestor = input.getE1Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB1(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE2UseCase() throws IOException {
+ final Resource left = input.getE2Left();
+ final Resource right = input.getE2Right();
+ final Resource ancestor = input.getE2Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB2(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE3UseCase() throws IOException {
+ final Resource left = input.getE3Left();
+ final Resource right = input.getE3Right();
+ final Resource ancestor = input.getE3Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB3(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE4UseCase() throws IOException {
+ final Resource left = input.getE4Left();
+ final Resource right = input.getE4Right();
+ final Resource ancestor = input.getE4Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB4(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE5UseCase() throws IOException {
+ final Resource left = input.getE5Left();
+ final Resource right = input.getE5Right();
+ final Resource ancestor = input.getE5Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB5(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE6UseCase() throws IOException {
+ final Resource left = input.getE6Left();
+ final Resource right = input.getE6Right();
+ final Resource ancestor = input.getE6Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB6(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE7UseCase() throws IOException {
+ final Resource left = input.getE7Left();
+ final Resource right = input.getE7Right();
+ final Resource ancestor = input.getE7Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD1(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE8UseCase() throws IOException {
+ final Resource left = input.getE8Left();
+ final Resource right = input.getE8Right();
+ final Resource ancestor = input.getE8Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD2(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE9UseCase() throws IOException {
+ final Resource left = input.getE9Left();
+ final Resource right = input.getE9Right();
+ final Resource ancestor = input.getE9Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD3(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE10UseCase() throws IOException {
+ final Resource left = input.getE10Left();
+ final Resource right = input.getE10Right();
+ final Resource ancestor = input.getE10Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD4(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testE11UseCase() throws IOException {
+ final Resource left = input.getE11Left();
+ final Resource right = input.getE11Right();
+ final Resource ancestor = input.getE11Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD5(TestKind.DELETE, comparison);
+ }
+
+ @Test
+ public void testF1UseCase1() throws IOException {
+ final Resource left = input.getF1Left();
+ final Resource right = input.getF1Right();
+ final Resource ancestor = input.getF1Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB1(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF2UseCase() throws IOException {
+ final Resource left = input.getF2Left();
+ final Resource right = input.getF2Right();
+ final Resource ancestor = input.getF2Ancestor();
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB2(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF3UseCase() throws IOException {
+ final Resource left = input.getF3Left();
+ final Resource right = input.getF3Right();
+ final Resource ancestor = input.getF3Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB3(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF4UseCase() throws IOException {
+ final Resource left = input.getF4Left();
+ final Resource right = input.getF4Right();
+ final Resource ancestor = input.getF4Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB4(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF5UseCase() throws IOException {
+ final Resource left = input.getF5Left();
+ final Resource right = input.getF5Right();
+ final Resource ancestor = input.getF5Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB5(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF6UseCase() throws IOException {
+ final Resource left = input.getF6Left();
+ final Resource right = input.getF6Right();
+ final Resource ancestor = input.getF6Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testAB6(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF7UseCase() throws IOException {
+ final Resource left = input.getF7Left();
+ final Resource right = input.getF7Right();
+ final Resource ancestor = input.getF7Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD1(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF8UseCase() throws IOException {
+ final Resource left = input.getF8Left();
+ final Resource right = input.getF8Right();
+ final Resource ancestor = input.getF8Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD2(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF9UseCase() throws IOException {
+ final Resource left = input.getF9Left();
+ final Resource right = input.getF9Right();
+ final Resource ancestor = input.getF9Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD3(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF10UseCase() throws IOException {
+ final Resource left = input.getF10Left();
+ final Resource right = input.getF10Right();
+ final Resource ancestor = input.getF10Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD4(TestKind.ADD, comparison);
+ }
+
+ @Test
+ public void testF11UseCase() throws IOException {
+ final Resource left = input.getF11Left();
+ final Resource right = input.getF11Right();
+ final Resource ancestor = input.getF11Ancestor();
+
+ final Comparison comparison = EMFCompare.compare(left, right, ancestor);
+ testCD5(TestKind.ADD, comparison);
+ }
+
+ private static void testAB1(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 3 differences
@@ -261,9 +498,7 @@ public class ReqComputingTest {
assertTrue(changedSingleValuedRefDiff.getRequires().contains(deleteSourceDiff));
}
- private static void testAB2(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testAB2(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 3 differences
@@ -307,9 +542,7 @@ public class ReqComputingTest {
assertTrue(deleteMultiValuedRefDiff.getRequires().contains(deleteSourceDiff));
}
- private static void testAB3(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testAB3(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 2 differences
@@ -345,9 +578,7 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(0), Integer.valueOf(deleteDestinationDiff.getRequires().size()));
}
- private static void testAB4(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testAB4(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 3 differences
@@ -392,9 +623,7 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(0), Integer.valueOf(deleteDestinationDiff.getRequires().size()));
}
- private static void testAB5(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testAB5(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 8 differences
@@ -476,9 +705,7 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(0), Integer.valueOf(delDest3.getRequires().size()));
}
- private static void testAB6(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testAB6(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 7 differences
@@ -554,9 +781,7 @@ public class ReqComputingTest {
assertTrue(delRefSource2.getRequires().contains(delDest));
}
- private static void testCD1(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testCD1(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 5 differences
@@ -610,12 +835,9 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(2), Integer.valueOf(deleteRefCDiff.getRequires().size()));
assertTrue(deleteRefCDiff.getRequires().contains(deleteCDiff));
assertTrue(deleteRefCDiff.getRequires().contains(deleteADiff));
-
}
- private static void testCD2(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testCD2(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 5 differences
@@ -662,12 +884,9 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(2), Integer.valueOf(deleteRefCDiff.getRequires().size()));
assertTrue(deleteRefCDiff.getRequires().contains(deleteCDiff));
assertTrue(deleteRefCDiff.getRequires().contains(deleteADiff));
-
}
- private static void testCD3(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testCD3(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 5 differences
@@ -713,12 +932,9 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(1), Integer.valueOf(deleteRefCDiff.getRequires().size()));
assertTrue(deleteRefCDiff.getRequires().contains(deleteCDiff));
-
}
- private static void testCD4(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testCD4(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 5 differences
@@ -757,12 +973,9 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(1), Integer.valueOf(deleteRefCDiff.getRequires().size()));
assertTrue(deleteRefCDiff.getRequires().contains(deleteCDiff));
-
}
- private static void testCD5(final Resource left, final Resource right, TestKind kind) {
- final Comparison comparison = EMFCompare.compare(left, right);
-
+ private static void testCD5(TestKind kind, final Comparison comparison) {
final List<Diff> differences = comparison.getDifferences();
// We should have no less and no more than 5 differences
@@ -792,6 +1005,5 @@ public class ReqComputingTest {
assertSame(Integer.valueOf(1), Integer.valueOf(deleteRefCDiff.getRequires().size()));
assertTrue(deleteRefCDiff.getRequires().contains(deleteCDiff));
-
}
}
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/ReqInputData.java b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/ReqInputData.java
index 4fb4b664c..917e8ca39 100644
--- a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/ReqInputData.java
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/ReqInputData.java
@@ -94,4 +94,268 @@ public class ReqInputData extends AbstractInputData {
return loadFromClassloader("c5/right.nodes"); //$NON-NLS-1$
}
+ public Resource getE1Left() throws IOException {
+ return loadFromClassloader("e1/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE1Right() throws IOException {
+ return loadFromClassloader("e1/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE1Ancestor() throws IOException {
+ return loadFromClassloader("e1/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE2Left() throws IOException {
+ return loadFromClassloader("e2/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE2Right() throws IOException {
+ return loadFromClassloader("e2/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE2Ancestor() throws IOException {
+ return loadFromClassloader("e2/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE3Left() throws IOException {
+ return loadFromClassloader("e3/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE3Right() throws IOException {
+ return loadFromClassloader("e3/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE3Ancestor() throws IOException {
+ return loadFromClassloader("e3/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE4Left() throws IOException {
+ return loadFromClassloader("e4/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE4Right() throws IOException {
+ return loadFromClassloader("e4/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE4Ancestor() throws IOException {
+ return loadFromClassloader("e4/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE5Left() throws IOException {
+ return loadFromClassloader("e5/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE5Right() throws IOException {
+ return loadFromClassloader("e5/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE5Ancestor() throws IOException {
+ return loadFromClassloader("e5/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE6Left() throws IOException {
+ return loadFromClassloader("e6/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE6Right() throws IOException {
+ return loadFromClassloader("e6/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE6Ancestor() throws IOException {
+ return loadFromClassloader("e6/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE7Left() throws IOException {
+ return loadFromClassloader("e7/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE7Right() throws IOException {
+ return loadFromClassloader("e7/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE7Ancestor() throws IOException {
+ return loadFromClassloader("e7/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE8Left() throws IOException {
+ return loadFromClassloader("e8/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE8Right() throws IOException {
+ return loadFromClassloader("e8/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE8Ancestor() throws IOException {
+ return loadFromClassloader("e8/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE9Left() throws IOException {
+ return loadFromClassloader("e9/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE9Right() throws IOException {
+ return loadFromClassloader("e9/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE9Ancestor() throws IOException {
+ return loadFromClassloader("e9/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE10Left() throws IOException {
+ return loadFromClassloader("e10/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE10Right() throws IOException {
+ return loadFromClassloader("e10/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE10Ancestor() throws IOException {
+ return loadFromClassloader("e10/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE11Left() throws IOException {
+ return loadFromClassloader("e11/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE11Right() throws IOException {
+ return loadFromClassloader("e11/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getE11Ancestor() throws IOException {
+ return loadFromClassloader("e11/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF1Left() throws IOException {
+ return loadFromClassloader("f1/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF1Right() throws IOException {
+ return loadFromClassloader("f1/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF1Ancestor() throws IOException {
+ return loadFromClassloader("f1/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF2Left() throws IOException {
+ return loadFromClassloader("f2/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF2Right() throws IOException {
+ return loadFromClassloader("f2/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF2Ancestor() throws IOException {
+ return loadFromClassloader("f2/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF3Left() throws IOException {
+ return loadFromClassloader("f3/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF3Right() throws IOException {
+ return loadFromClassloader("f3/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF3Ancestor() throws IOException {
+ return loadFromClassloader("f3/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF4Left() throws IOException {
+ return loadFromClassloader("f4/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF4Right() throws IOException {
+ return loadFromClassloader("f4/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF4Ancestor() throws IOException {
+ return loadFromClassloader("f4/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF5Left() throws IOException {
+ return loadFromClassloader("f5/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF5Right() throws IOException {
+ return loadFromClassloader("f5/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF5Ancestor() throws IOException {
+ return loadFromClassloader("f5/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF6Left() throws IOException {
+ return loadFromClassloader("f6/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF6Right() throws IOException {
+ return loadFromClassloader("f6/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF6Ancestor() throws IOException {
+ return loadFromClassloader("f6/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF7Left() throws IOException {
+ return loadFromClassloader("f7/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF7Right() throws IOException {
+ return loadFromClassloader("f7/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF7Ancestor() throws IOException {
+ return loadFromClassloader("f7/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF8Left() throws IOException {
+ return loadFromClassloader("f8/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF8Right() throws IOException {
+ return loadFromClassloader("f8/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF8Ancestor() throws IOException {
+ return loadFromClassloader("f8/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF9Left() throws IOException {
+ return loadFromClassloader("f9/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF9Right() throws IOException {
+ return loadFromClassloader("f9/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF9Ancestor() throws IOException {
+ return loadFromClassloader("f9/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF10Left() throws IOException {
+ return loadFromClassloader("f10/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF10Right() throws IOException {
+ return loadFromClassloader("f10/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF10Ancestor() throws IOException {
+ return loadFromClassloader("f10/ancestor.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF11Left() throws IOException {
+ return loadFromClassloader("f11/left.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF11Right() throws IOException {
+ return loadFromClassloader("f11/right.nodes"); //$NON-NLS-1$
+ }
+
+ public Resource getF11Ancestor() throws IOException {
+ return loadFromClassloader("f11/ancestor.nodes"); //$NON-NLS-1$
+ }
+
}
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/ancestor.nodes
new file mode 100644
index 000000000..c1d4cdf90
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/ancestor.nodes
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_TovDYJUgEeGiestbncRZoQ" name="source" singleValuedReference="_XKddsJUgEeGiestbncRZoQ"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination">
+ <singleValueContainment xmi:id="_XKddsJUgEeGiestbncRZoQ" name="destination"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/left.nodes
new file mode 100644
index 000000000..1c59d8c88
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource"/>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/right.nodes
new file mode 100644
index 000000000..c1d4cdf90
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e1/right.nodes
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_TovDYJUgEeGiestbncRZoQ" name="source" singleValuedReference="_XKddsJUgEeGiestbncRZoQ"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination">
+ <singleValueContainment xmi:id="_XKddsJUgEeGiestbncRZoQ" name="destination"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/ancestor.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/ancestor.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/left.nodes
new file mode 100644
index 000000000..3da3ee1f1
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e10/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/ancestor.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/ancestor.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/left.nodes
new file mode 100644
index 000000000..4316ced77
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e11/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/ancestor.nodes
new file mode 100644
index 000000000..79e4dada3
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/ancestor.nodes
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_lXBCwJW_EeG0rf2xmQ7T6A" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_eWZDMJXAEeG0rf2xmQ7T6A" name="source" multiValuedReference="_i5roMJXAEeG0rf2xmQ7T6A"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_pS_JEJW_EeG0rf2xmQ7T6A" name="containerDestination">
+ <containmentRef2 xmi:id="_i5roMJXAEeG0rf2xmQ7T6A" name="destination"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/left.nodes
new file mode 100644
index 000000000..4a3973f35
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_lXBCwJW_EeG0rf2xmQ7T6A" name="containerSource"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_pS_JEJW_EeG0rf2xmQ7T6A" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/right.nodes
new file mode 100644
index 000000000..79e4dada3
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e2/right.nodes
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_lXBCwJW_EeG0rf2xmQ7T6A" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_eWZDMJXAEeG0rf2xmQ7T6A" name="source" multiValuedReference="_i5roMJXAEeG0rf2xmQ7T6A"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_pS_JEJW_EeG0rf2xmQ7T6A" name="containerDestination">
+ <containmentRef2 xmi:id="_i5roMJXAEeG0rf2xmQ7T6A" name="destination"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/ancestor.nodes
new file mode 100644
index 000000000..878b5ffb7
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/ancestor.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_7OmdQJXDEeGAd-lTZsrNaw" name="source" singleValuedReference="_RoOxsJXEEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination">
+ <singleValueContainment xmi:id="_RoOxsJXEEeGAd-lTZsrNaw" name="destination2"/>
+ </containmentRef1>
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/left.nodes
new file mode 100644
index 000000000..366091761
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/left.nodes
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_7OmdQJXDEeGAd-lTZsrNaw" name="source" singleValuedReference="_-bda0JXDEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination"/>
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/right.nodes
new file mode 100644
index 000000000..878b5ffb7
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e3/right.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_7OmdQJXDEeGAd-lTZsrNaw" name="source" singleValuedReference="_RoOxsJXEEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination">
+ <singleValueContainment xmi:id="_RoOxsJXEEeGAd-lTZsrNaw" name="destination2"/>
+ </containmentRef1>
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/ancestor.nodes
new file mode 100644
index 000000000..e72461458
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/ancestor.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_IclIYJXuEeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination">
+ <containmentRef2 xmi:id="_IclIYJXuEeG8KoYbFpzr2g" name="destination2"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/left.nodes
new file mode 100644
index 000000000..c62cfb3fe
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/left.nodes
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_-bda0JXDEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/right.nodes
new file mode 100644
index 000000000..e72461458
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e4/right.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_IclIYJXuEeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination">
+ <containmentRef2 xmi:id="_IclIYJXuEeG8KoYbFpzr2g" name="destination2"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/ancestor.nodes
new file mode 100644
index 000000000..b7c3556fa
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/ancestor.nodes
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_IclIYJXuEeG8KoYbFpzr2g _PkwdQJX0EeG8KoYbFpzr2g _onKKwJX0EeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination">
+ <containmentRef1 xmi:id="_IclIYJXuEeG8KoYbFpzr2g" name="destination2"/>
+ <containmentRef1 xmi:id="_PkwdQJX0EeG8KoYbFpzr2g" name="destination3"/>
+ </containmentRef1>
+ <containmentRef1 xmi:id="_onKKwJX0EeG8KoYbFpzr2g" name="destination5"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/left.nodes
new file mode 100644
index 000000000..788b21b65
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/left.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_-bda0JXDEeGAd-lTZsrNaw _coQIwJX0EeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination"/>
+ <containmentRef1 xmi:id="_coQIwJX0EeG8KoYbFpzr2g" name="destination4"/>
+ <containmentRef1 xmi:id="_onKKwJX0EeG8KoYbFpzr2g" name="destination5"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/right.nodes
new file mode 100644
index 000000000..b7c3556fa
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e5/right.nodes
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_IclIYJXuEeG8KoYbFpzr2g _PkwdQJX0EeG8KoYbFpzr2g _onKKwJX0EeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination">
+ <containmentRef1 xmi:id="_IclIYJXuEeG8KoYbFpzr2g" name="destination2"/>
+ <containmentRef1 xmi:id="_PkwdQJX0EeG8KoYbFpzr2g" name="destination3"/>
+ </containmentRef1>
+ <containmentRef1 xmi:id="_onKKwJX0EeG8KoYbFpzr2g" name="destination5"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/ancestor.nodes
new file mode 100644
index 000000000..244259c37
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/ancestor.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_Ll2PUJYCEeG8KoYbFpzr2g" name="destination"/>
+ <containmentRef1 xmi:id="_ZwdT4JYCEeG8KoYbFpzr2g" name="container">
+ <containmentRef1 xmi:id="_c1X2YJYCEeG8KoYbFpzr2g" name="subContainer">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueReference" xmi:id="_kCRh8JYCEeG8KoYbFpzr2g" name="source1" singleValuedReference="_Ll2PUJYCEeG8KoYbFpzr2g"/>
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_lvcOYJYCEeG8KoYbFpzr2g" name="source2" multiValuedReference="_Ll2PUJYCEeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/left.nodes
new file mode 100644
index 000000000..1470bc07d
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/left.nodes
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements"/>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/right.nodes
new file mode 100644
index 000000000..244259c37
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e6/right.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_Ll2PUJYCEeG8KoYbFpzr2g" name="destination"/>
+ <containmentRef1 xmi:id="_ZwdT4JYCEeG8KoYbFpzr2g" name="container">
+ <containmentRef1 xmi:id="_c1X2YJYCEeG8KoYbFpzr2g" name="subContainer">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueReference" xmi:id="_kCRh8JYCEeG8KoYbFpzr2g" name="source1" singleValuedReference="_Ll2PUJYCEeG8KoYbFpzr2g"/>
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_lvcOYJYCEeG8KoYbFpzr2g" name="source2" multiValuedReference="_Ll2PUJYCEeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/ancestor.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/ancestor.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/left.nodes
new file mode 100644
index 000000000..1470bc07d
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/left.nodes
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements"/>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e7/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/ancestor.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/ancestor.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/left.nodes
new file mode 100644
index 000000000..ea98a1577
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/left.nodes
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e8/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/ancestor.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/ancestor.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/left.nodes
new file mode 100644
index 000000000..904aad157
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/left.nodes
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/e9/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/ancestor.nodes
new file mode 100644
index 000000000..1c59d8c88
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/ancestor.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource"/>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/left.nodes
new file mode 100644
index 000000000..1c59d8c88
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource"/>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/right.nodes
new file mode 100644
index 000000000..c1d4cdf90
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f1/right.nodes
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_TovDYJUgEeGiestbncRZoQ" name="source" singleValuedReference="_XKddsJUgEeGiestbncRZoQ"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination">
+ <singleValueContainment xmi:id="_XKddsJUgEeGiestbncRZoQ" name="destination"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/ancestor.nodes
new file mode 100644
index 000000000..3da3ee1f1
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/ancestor.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/left.nodes
new file mode 100644
index 000000000..3da3ee1f1
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f10/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/ancestor.nodes
new file mode 100644
index 000000000..4316ced77
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/ancestor.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/left.nodes
new file mode 100644
index 000000000..4316ced77
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f11/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/ancestor.nodes
new file mode 100644
index 000000000..4a3973f35
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/ancestor.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_lXBCwJW_EeG0rf2xmQ7T6A" name="containerSource"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_pS_JEJW_EeG0rf2xmQ7T6A" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/left.nodes
new file mode 100644
index 000000000..4a3973f35
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/left.nodes
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_lXBCwJW_EeG0rf2xmQ7T6A" name="containerSource"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_pS_JEJW_EeG0rf2xmQ7T6A" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/right.nodes
new file mode 100644
index 000000000..79e4dada3
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f2/right.nodes
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_lXBCwJW_EeG0rf2xmQ7T6A" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_eWZDMJXAEeG0rf2xmQ7T6A" name="source" multiValuedReference="_i5roMJXAEeG0rf2xmQ7T6A"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_pS_JEJW_EeG0rf2xmQ7T6A" name="containerDestination">
+ <containmentRef2 xmi:id="_i5roMJXAEeG0rf2xmQ7T6A" name="destination"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/ancestor.nodes
new file mode 100644
index 000000000..366091761
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/ancestor.nodes
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_7OmdQJXDEeGAd-lTZsrNaw" name="source" singleValuedReference="_-bda0JXDEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination"/>
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/left.nodes
new file mode 100644
index 000000000..366091761
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/left.nodes
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_7OmdQJXDEeGAd-lTZsrNaw" name="source" singleValuedReference="_-bda0JXDEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination"/>
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/right.nodes
new file mode 100644
index 000000000..878b5ffb7
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f3/right.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_PIx7sJUfEeGiestbncRZoQ" name="containerSource">
+ <singleValueContainment xsi:type="nodes:NodeSingleValueReference" xmi:id="_7OmdQJXDEeGAd-lTZsrNaw" name="source" singleValuedReference="_RoOxsJXEEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeSingleValueContainment" xmi:id="_khY4AJUfEeGiestbncRZoQ" name="containerDestination">
+ <singleValueContainment xmi:id="_RoOxsJXEEeGAd-lTZsrNaw" name="destination2"/>
+ </containmentRef1>
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/ancestor.nodes
new file mode 100644
index 000000000..c62cfb3fe
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/ancestor.nodes
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_-bda0JXDEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/left.nodes
new file mode 100644
index 000000000..c62cfb3fe
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/left.nodes
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_-bda0JXDEeGAd-lTZsrNaw"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/right.nodes
new file mode 100644
index 000000000..e72461458
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f4/right.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_IclIYJXuEeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination">
+ <containmentRef2 xmi:id="_IclIYJXuEeG8KoYbFpzr2g" name="destination2"/>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/ancestor.nodes
new file mode 100644
index 000000000..788b21b65
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/ancestor.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_-bda0JXDEeGAd-lTZsrNaw _coQIwJX0EeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination"/>
+ <containmentRef1 xmi:id="_coQIwJX0EeG8KoYbFpzr2g" name="destination4"/>
+ <containmentRef1 xmi:id="_onKKwJX0EeG8KoYbFpzr2g" name="destination5"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/left.nodes
new file mode 100644
index 000000000..788b21b65
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/left.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_-bda0JXDEeGAd-lTZsrNaw _coQIwJX0EeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination"/>
+ <containmentRef1 xmi:id="_coQIwJX0EeG8KoYbFpzr2g" name="destination4"/>
+ <containmentRef1 xmi:id="_onKKwJX0EeG8KoYbFpzr2g" name="destination5"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/right.nodes
new file mode 100644
index 000000000..b7c3556fa
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f5/right.nodes
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_-bda0JXDEeGAd-lTZsrNaw" name="destination1"/>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_mDd_oJXsEeG8KoYbFpzr2g" name="containerSource">
+ <containmentRef2 xsi:type="nodes:NodeMultiValueReference" xmi:id="_6oMn8JXsEeG8KoYbFpzr2g" name="source" multiValuedReference="_IclIYJXuEeG8KoYbFpzr2g _PkwdQJX0EeG8KoYbFpzr2g _onKKwJX0EeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ <containmentRef1 xsi:type="nodes:NodeMultipleContainment" xmi:id="_n8_GAJXsEeG8KoYbFpzr2g" name="containerDestination">
+ <containmentRef1 xmi:id="_IclIYJXuEeG8KoYbFpzr2g" name="destination2"/>
+ <containmentRef1 xmi:id="_PkwdQJX0EeG8KoYbFpzr2g" name="destination3"/>
+ </containmentRef1>
+ <containmentRef1 xmi:id="_onKKwJX0EeG8KoYbFpzr2g" name="destination5"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/ancestor.nodes
new file mode 100644
index 000000000..1470bc07d
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/ancestor.nodes
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements"/>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/left.nodes
new file mode 100644
index 000000000..1470bc07d
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/left.nodes
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements"/>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/right.nodes
new file mode 100644
index 000000000..244259c37
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f6/right.nodes
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_Ll2PUJYCEeG8KoYbFpzr2g" name="destination"/>
+ <containmentRef1 xmi:id="_ZwdT4JYCEeG8KoYbFpzr2g" name="container">
+ <containmentRef1 xmi:id="_c1X2YJYCEeG8KoYbFpzr2g" name="subContainer">
+ <containmentRef1 xsi:type="nodes:NodeSingleValueReference" xmi:id="_kCRh8JYCEeG8KoYbFpzr2g" name="source1" singleValuedReference="_Ll2PUJYCEeG8KoYbFpzr2g"/>
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_lvcOYJYCEeG8KoYbFpzr2g" name="source2" multiValuedReference="_Ll2PUJYCEeG8KoYbFpzr2g"/>
+ </containmentRef1>
+ </containmentRef1>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/ancestor.nodes
new file mode 100644
index 000000000..1470bc07d
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/ancestor.nodes
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements"/>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/left.nodes
new file mode 100644
index 000000000..1470bc07d
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/left.nodes
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements"/>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f7/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/ancestor.nodes
new file mode 100644
index 000000000..ea98a1577
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/ancestor.nodes
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/left.nodes
new file mode 100644
index 000000000..ea98a1577
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/left.nodes
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f8/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/ancestor.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/ancestor.nodes
new file mode 100644
index 000000000..904aad157
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/ancestor.nodes
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/left.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/left.nodes
new file mode 100644
index 000000000..904aad157
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/left.nodes
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/right.nodes b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/right.nodes
new file mode 100644
index 000000000..de9a86aed
--- /dev/null
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/f9/right.nodes
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nodes:Node xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:nodes="http://www.eclipse.org/emf/compare/tests/nodes" xmi:id="_yWc_0JUeEeGiestbncRZoQ" name="Requirements">
+ <containmentRef1 xsi:type="nodes:NodeMultiValueReference" xmi:id="_BXEXkJm6EeG-CJ9tuKUrGw" name="A" multiValuedReference="_DGg78Jm6EeG-CJ9tuKUrGw _DbRD8Jm6EeG-CJ9tuKUrGw"/>
+ <containmentRef1 xmi:id="_DGg78Jm6EeG-CJ9tuKUrGw" name="B"/>
+ <containmentRef1 xmi:id="_DbRD8Jm6EeG-CJ9tuKUrGw" name="C"/>
+</nodes:Node>
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/useCases b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/useCases
index d66a15240..1c2a52035 100644
--- a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/useCases
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/req/data/useCases
@@ -22,4 +22,15 @@ c - many business model object dependency - left changes
c2 - Object A (which references B and C) and C are deleted.
c3 - A reference to B (deleted) and C (deleted) is removed from object A.
c4 - A reference to B and C (deleted) is removed from object A.
- c5 - A reference to C (deleted) is removed from object A. \ No newline at end of file
+ c5 - A reference to C (deleted) is removed from object A.
+
+d - many business model object dependency - right changes
+ d1 - Object A (which references B and C), B and C are deleted.
+ d2 - Object A (which references B and C) and C are deleted.
+ d3 - A reference to B (deleted) and C (deleted) is removed from object A.
+ d4 - A reference to B and C (deleted) is removed from object A.
+ d5 - A reference to C (deleted) is removed from object A.
+
+e - 3-way tests - left changes
+
+f - 3 way tests - right changes \ No newline at end of file

Back to the top