Index: test/org/openstreetmap/josm/data/osm/visitor/MergeVisitorTest.java
===================================================================
--- test/org/openstreetmap/josm/data/osm/visitor/MergeVisitorTest.java	(revision 135)
+++ test/org/openstreetmap/josm/data/osm/visitor/MergeVisitorTest.java	(revision 143)
@@ -11,5 +11,4 @@
 import org.openstreetmap.josm.data.osm.Segment;
 import org.openstreetmap.josm.data.osm.Way;
-import org.openstreetmap.josm.data.osm.visitor.MergeVisitor;
 import org.openstreetmap.josm.testframework.Bug;
 import org.openstreetmap.josm.testframework.DataSetTestCaseHelper;
@@ -267,8 +266,44 @@
 	/**
 	 * Deleted segments should be deleted when merged over unchanged segments.
-	 * Deleted segments should also raise an conflict when merged over changed segments. 
-	 */
-	//TODO
-
+	 */
+	public void testMergeDeletedOverUnchangedDeletes() {
+		DataSet ds = new DataSet();
+		Segment oldSegment = createSegment(ds, false, false, 23);
+		Segment s = createSegment(null, false, true, 23);
+		
+		MergeVisitor v = new MergeVisitor(ds);
+		v.visit(s);
+		v.fixReferences();
+		
+		assertEquals(true, oldSegment.deleted);
+	}
+	
+
+	/**
+	 * Deleted segments should raise an conflict when merged over changed segments. 
+	 */
+	public void testMergeDeletedOverChangedConflict() {
+		DataSet ds = new DataSet();
+		createSegment(ds, false, false, 23).modified = true;
+		Segment s = createSegment(null, false, true, 23);
+		
+		MergeVisitor v = new MergeVisitor(ds);
+		v.visit(s);
+		v.fixReferences();
+		
+		assertEquals(1, v.conflicts.size());
+	}
+
+
+	private Segment createSegment(DataSet ds, boolean incomplete, boolean deleted, int id) {
+		Node n1 = DataSetTestCaseHelper.createNode(ds);
+		Node n2 = DataSetTestCaseHelper.createNode(ds);
+		Segment s = DataSetTestCaseHelper.createSegment(ds, n1, n2);
+		s.incomplete = incomplete;
+		s.id = id;
+		s.deleted = deleted;
+		return s;
+	}
+	
 	/**
 	 * Create that amount of nodes and add them to the dataset. The id will be 1,2,3,4...
Index: test/org/openstreetmap/josm/testframework/DataSetTestCaseHelper.java
===================================================================
--- test/org/openstreetmap/josm/testframework/DataSetTestCaseHelper.java	(revision 135)
+++ test/org/openstreetmap/josm/testframework/DataSetTestCaseHelper.java	(revision 143)
@@ -44,5 +44,6 @@
 		Way t = new Way();
 		t.segments.addAll(Arrays.asList(segments));
-		ds.ways.add(t);
+		if (ds != null)
+			ds.ways.add(t);
 		return t;
 	}
@@ -53,5 +54,6 @@
 	public static Segment createSegment(DataSet ds, Node n1, Node n2) {
 		Segment ls = new Segment(n1, n2);
-		ds.segments.add(ls);
+		if (ds != null)
+			ds.segments.add(ls);
 		return ls;
 	}
