Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathieu Cartaud2016-09-07 08:56:03 +0000
committerMathieu Cartaud2016-09-12 15:50:01 +0000
commit741f9ffd6108a4a0e42b2a2648bd29cb048e6ea7 (patch)
treea282265fce31951cfea78389f4f0aab2d1e8e93e /plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests
parentd46e8c85b4cdbb7b79c05d43cf77b411dcd9f71a (diff)
downloadorg.eclipse.emf.compare-741f9ffd6108a4a0e42b2a2648bd29cb048e6ea7.tar.gz
org.eclipse.emf.compare-741f9ffd6108a4a0e42b2a2648bd29cb048e6ea7.tar.xz
org.eclipse.emf.compare-741f9ffd6108a4a0e42b2a2648bd29cb048e6ea7.zip
[442897] Fix markers issue in SMV
Some markers of required or rejected diffs don't have the correct color in the gutter. It was previously fixed by review 37012 but this fix finally introduces other problems. This commit reverts this previous fix and adopts the following solution: pseudo conflicts are simply not taken into account when computing merge dependencies since there is nothing to do with them, the changes have already been made on both sides. Change-Id: I554ccb6c3c6617882ba4420bfc3f0cd7f6784f8c Signed-off-by: Mathieu Cartaud <mathieu.cartaud@obeo.fr>
Diffstat (limited to 'plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests')
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/conflict/ConflictDetectionTest.java34
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictImplicationsTest_Bug484579.java16
-rw-r--r--plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictMergeTest.java8
3 files changed, 33 insertions, 25 deletions
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/conflict/ConflictDetectionTest.java b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/conflict/ConflictDetectionTest.java
index 15ac2c236..c88fb7951 100644
--- a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/conflict/ConflictDetectionTest.java
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/conflict/ConflictDetectionTest.java
@@ -13,6 +13,8 @@ package org.eclipse.emf.compare.tests.conflict;
import static com.google.common.base.Predicates.and;
import static com.google.common.base.Predicates.not;
+import static com.google.common.collect.Iterables.filter;
+import static com.google.common.collect.Iterables.size;
import static org.eclipse.emf.compare.ConflictKind.PSEUDO;
import static org.eclipse.emf.compare.ConflictKind.REAL;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.added;
@@ -20,6 +22,7 @@ import static org.eclipse.emf.compare.utils.EMFComparePredicates.addedToAttribut
import static org.eclipse.emf.compare.utils.EMFComparePredicates.addedToReference;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.changedAttribute;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.changedReference;
+import static org.eclipse.emf.compare.utils.EMFComparePredicates.containsConflictOfTypes;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.fromSide;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.hasConflict;
import static org.eclipse.emf.compare.utils.EMFComparePredicates.moved;
@@ -39,7 +42,6 @@ import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import com.google.common.base.Predicate;
-import com.google.common.collect.Iterables;
import com.google.common.collect.Iterators;
import java.io.IOException;
@@ -2137,9 +2139,11 @@ public class ConflictDetectionTest {
assertEquals(6, differences.size());
assertEquals(2, conflicts.size());
- for (Conflict conflict : conflicts) {
- assertSame(REAL, conflict.getKind());
- }
+ Iterable<Conflict> realConflicts = filter(conflicts, containsConflictOfTypes(REAL));
+ Iterable<Conflict> pseudoConflicts = filter(conflicts, containsConflictOfTypes(PSEUDO));
+
+ assertEquals(1, size(realConflicts));
+ assertEquals(1, size(pseudoConflicts));
}
@Test
@@ -2157,9 +2161,11 @@ public class ConflictDetectionTest {
assertEquals(8, differences.size());
assertEquals(3, conflicts.size());
- for (Conflict conflict : conflicts) {
- assertSame(REAL, conflict.getKind());
- }
+ Iterable<Conflict> realConflicts = filter(conflicts, containsConflictOfTypes(REAL));
+ Iterable<Conflict> pseudoConflicts = filter(conflicts, containsConflictOfTypes(PSEUDO));
+
+ assertEquals(1, size(realConflicts));
+ assertEquals(2, size(pseudoConflicts));
}
@Test
@@ -2177,9 +2183,11 @@ public class ConflictDetectionTest {
assertEquals(6, differences.size());
assertEquals(3, conflicts.size());
- for (Conflict conflict : conflicts) {
- assertSame(REAL, conflict.getKind());
- }
+ Iterable<Conflict> realConflicts = filter(conflicts, containsConflictOfTypes(REAL));
+ Iterable<Conflict> pseudoConflicts = filter(conflicts, containsConflictOfTypes(PSEUDO));
+
+ assertEquals(1, size(realConflicts));
+ assertEquals(2, size(pseudoConflicts));
}
@Test
@@ -2340,9 +2348,9 @@ public class ConflictDetectionTest {
assertEquals(5, differences.size());
assertEquals(2, conflicts.size());
- assertEquals(4, Iterables.size(Iterables.filter(differences, hasConflict(REAL))));
- Iterable<Diff> nonConflictingDiffs = Iterables.filter(differences, not(hasConflict(REAL, PSEUDO)));
- assertEquals(1, Iterables.size(nonConflictingDiffs));
+ assertEquals(4, size(filter(differences, hasConflict(REAL))));
+ Iterable<Diff> nonConflictingDiffs = filter(differences, not(hasConflict(REAL, PSEUDO)));
+ assertEquals(1, size(nonConflictingDiffs));
Diff nonConflictingDiff = nonConflictingDiffs.iterator().next();
assertTrue(nonConflictingDiff instanceof ResourceAttachmentChange);
assertEquals(DifferenceSource.RIGHT, nonConflictingDiff.getSource());
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictImplicationsTest_Bug484579.java b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictImplicationsTest_Bug484579.java
index e131bbf62..1c50801e1 100644
--- a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictImplicationsTest_Bug484579.java
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictImplicationsTest_Bug484579.java
@@ -85,7 +85,7 @@ public class ConflictImplicationsTest_Bug484579 {
MergeDependenciesChecker checker = getChecker(deletePackageY);
checker.rightToLeft().implies(1).rejects(0).check();
- checker.leftToRight().implies(5).rejects(0).check();
+ checker.leftToRight().implies(1).rejects(0).check();
}
/**
@@ -216,11 +216,11 @@ public class ConflictImplicationsTest_Bug484579 {
differences.remove(diff);
checker = getChecker(diff);
if (diff.getSource() == DifferenceSource.LEFT) {
- checker.rightToLeft().implies(7).rejects(0).check();
+ checker.rightToLeft().implies(4).rejects(0).check();
checker.leftToRight().implies(2).rejects(0).check();
} else {
checker.rightToLeft().implies(2).rejects(0).check();
- checker.leftToRight().implies(7).rejects(0).check();
+ checker.leftToRight().implies(2).rejects(0).check();
}
}
@@ -234,16 +234,16 @@ public class ConflictImplicationsTest_Bug484579 {
checker = getChecker(diff);
if (diff.getSource() == DifferenceSource.LEFT) {
checker.rightToLeft().implies(3).rejects(0).check();
- checker.leftToRight().implies(4).rejects(0).check();
+ checker.leftToRight().implies(2).rejects(0).check();
} else {
- checker.rightToLeft().implies(4).rejects(0).check();
- checker.leftToRight().implies(3).rejects(0).check();
+ checker.rightToLeft().implies(2).rejects(0).check();
+ checker.leftToRight().implies(2).rejects(0).check();
}
}
checker = getChecker(deleteClassB);
checker.rightToLeft().implies(2).rejects(0).check();
- checker.leftToRight().implies(3).rejects(1).check();
+ checker.leftToRight().implies(1).rejects(1).check();
checker = getChecker(renameClassB);
checker.rightToLeft().implies(1).rejects(2).check();
@@ -251,7 +251,7 @@ public class ConflictImplicationsTest_Bug484579 {
checker = getChecker(deletePackageA);
checker.rightToLeft().implies(1).rejects(0).check();
- checker.leftToRight().implies(4).rejects(2).check();
+ checker.leftToRight().implies(2).rejects(2).check();
checker = getChecker(renamePackageA);
checker.rightToLeft().implies(1).rejects(1).check();
diff --git a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictMergeTest.java b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictMergeTest.java
index 9d275deae..24704a3b0 100644
--- a/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictMergeTest.java
+++ b/plugins/org.eclipse.emf.compare.tests/src/org/eclipse/emf/compare/tests/merge/ConflictMergeTest.java
@@ -119,7 +119,7 @@ public class ConflictMergeTest {
assertEquals(DifferenceState.MERGED, diffNodeCLeft.getState());
assertEquals(DifferenceState.MERGED, diffNodeCRight.getState());
- assertEquals(DifferenceState.UNRESOLVED, diffNodeDLeft.getState());
+ assertEquals(DifferenceState.MERGED, diffNodeDLeft.getState());
assertEquals(DifferenceState.MERGED, diffNodeDRight.getState());
assertEquals(DifferenceState.UNRESOLVED, diffNodeELeft.getState());
assertEquals(DifferenceState.MERGED, diffNodeFRight.getState());
@@ -182,7 +182,7 @@ public class ConflictMergeTest {
assertEquals(DifferenceState.UNRESOLVED, diffNodeCLeft.getState());
assertEquals(DifferenceState.MERGED, diffNodeCRight.getState());
- assertEquals(DifferenceState.UNRESOLVED, diffNodeDLeft.getState());
+ assertEquals(DifferenceState.MERGED, diffNodeDLeft.getState());
assertEquals(DifferenceState.MERGED, diffNodeDRight.getState());
assertEquals(DifferenceState.UNRESOLVED, diffNodeELeft.getState());
assertEquals(DifferenceState.MERGED, diffNodeFRight.getState());
@@ -246,7 +246,7 @@ public class ConflictMergeTest {
assertEquals(DifferenceState.MERGED, diffNodeCLeft.getState());
assertEquals(DifferenceState.UNRESOLVED, diffNodeCRight.getState());
assertEquals(DifferenceState.MERGED, diffNodeDLeft.getState());
- assertEquals(DifferenceState.UNRESOLVED, diffNodeDRight.getState());
+ assertEquals(DifferenceState.MERGED, diffNodeDRight.getState());
assertEquals(DifferenceState.MERGED, diffNodeELeft.getState());
assertEquals(DifferenceState.UNRESOLVED, diffNodeFRight.getState());
}
@@ -309,7 +309,7 @@ public class ConflictMergeTest {
assertEquals(DifferenceState.MERGED, diffNodeCLeft.getState());
assertEquals(DifferenceState.MERGED, diffNodeCRight.getState());
assertEquals(DifferenceState.MERGED, diffNodeDLeft.getState());
- assertEquals(DifferenceState.UNRESOLVED, diffNodeDRight.getState());
+ assertEquals(DifferenceState.MERGED, diffNodeDRight.getState());
assertEquals(DifferenceState.MERGED, diffNodeELeft.getState());
assertEquals(DifferenceState.UNRESOLVED, diffNodeFRight.getState());
}

Back to the top