Index: trunk/test/unit/org/openstreetmap/josm/data/osm/DataSetMergerTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/data/osm/DataSetMergerTest.java	(revision 2443)
+++ trunk/test/unit/org/openstreetmap/josm/data/osm/DataSetMergerTest.java	(revision 2471)
@@ -17,4 +17,5 @@
 import java.util.logging.Logger;
 
+import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -62,4 +63,9 @@
     }
 
+    @Before
+    public void setUp() {
+        User.clearUserMap();
+    }
+
     /**
      * two identical nodes, even in id and version. No confict expected.
@@ -348,5 +354,6 @@
     /**
      * their node is not visible and doesn't exist in my data set
-     * => ignore their node
+     * => we can't ignore it because we'd run into troubles in case of multi fetch
+     * which can return invisible objects
      *
      */
@@ -373,5 +380,5 @@
         Node n2 = (Node)my.getPrimitiveById(1,OsmPrimitiveType.NODE);
         assertEquals(0,visitor.getConflicts().size());
-        assertEquals(1, my.getNodes().size());
+        assertEquals(2, my.getNodes().size());
         assertEquals(n,n2);
     }
@@ -775,5 +782,6 @@
         theirWay.addNode(n3);
         theirWay.addNode(n4);
-        theirWay.setUser(User.createOsmUser(1111, "their"));
+        User user = User.createOsmUser(1111, "their");
+        theirWay.setUser(user);
         theirWay.setTimestamp(new Date());
         their.addPrimitive(theirWay);
@@ -895,5 +903,9 @@
         theirWay.addNode(n4);
         theirWay.addNode(n5);
-        theirWay.setUser(User.createOsmUser(1111, "their"));
+        User user = User.getById(1111);
+        if (user == null) {
+            User.createOsmUser(1111, "their");
+        }
+        theirWay.setUser(user);
         theirWay.setTimestamp(new Date());
         their.addPrimitive(theirWay);
@@ -1081,3 +1093,4 @@
         assertTrue(!w.getNode(1).incomplete);
     }
+
 }
