Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/APIDataSetTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/APIDataSetTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/APIDataSetTest.java	(revision 3577)
@@ -7,11 +7,18 @@
 import java.util.List;
 
+import org.junit.BeforeClass;
 import org.junit.Test;
+import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.actions.upload.CyclicUploadDependencyException;
 import org.openstreetmap.josm.data.APIDataSet;
+import org.openstreetmap.josm.data.Preferences;
 
 
 public class APIDataSetTest {
 
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
 
     @Test
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/DataSetMergerTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/DataSetMergerTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/DataSetMergerTest.java	(revision 3577)
@@ -15,6 +15,8 @@
 import org.junit.After;
 import org.junit.Before;
+import org.junit.BeforeClass;
 import org.junit.Test;
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.projection.Mercator;
@@ -59,4 +61,9 @@
     }*/
 
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
+
     private DataSet my;
     private DataSet their;
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/FilterTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/FilterTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/FilterTest.java	(revision 3577)
@@ -17,4 +17,5 @@
 import org.openstreetmap.josm.actions.search.SearchAction.SearchMode;
 import org.openstreetmap.josm.actions.search.SearchCompiler.ParseError;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.projection.Mercator;
@@ -25,7 +26,9 @@
 
 public class FilterTest {
+
     @BeforeClass
     public static void setUp() {
         Main.proj = new Mercator();
+        Main.pref = new Preferences();
     }
 
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/OsmPrimitiveKeyHandling.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/OsmPrimitiveKeyHandling.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/OsmPrimitiveKeyHandling.java	(revision 3577)
@@ -4,5 +4,8 @@
 import static org.junit.Assert.assertTrue;
 
+import org.junit.BeforeClass;
 import org.junit.Test;
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.coor.LatLon;
 
@@ -10,7 +13,12 @@
  * Some unit test cases for basic tag management on {@see OsmPrimitive}. Uses
  * {@see Node} for the tests, {@see OsmPrimitive} is abstract.
- * 
+ *
  */
 public class OsmPrimitiveKeyHandling {
+
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
 
     /**
@@ -30,5 +38,5 @@
     /**
      * Add a tag to an empty node and test the query and get methods.
-     * 
+     *
      */
     @Test
@@ -62,5 +70,5 @@
     /**
      * Remove tags from a node with two tags and test the state of the node.
-     * 
+     *
      */
     @Test
@@ -90,5 +98,5 @@
     /**
      * Remove all tags from a node
-     * 
+     *
      */
     @Test
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/OsmPrimitiveTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/OsmPrimitiveTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/OsmPrimitiveTest.java	(revision 3577)
@@ -9,8 +9,14 @@
 import org.junit.Test;
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.projection.Mercator;
 
 public class OsmPrimitiveTest {
+
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
 
     private void compareReferrers(OsmPrimitive actual, OsmPrimitive... expected) {
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/QuadBucketsTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/QuadBucketsTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/QuadBucketsTest.java	(revision 3577)
@@ -11,6 +11,8 @@
 import org.fest.reflect.reference.TypeRef;
 import org.junit.Assert;
+import org.junit.BeforeClass;
 import org.junit.Test;
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.projection.Mercator;
@@ -19,4 +21,9 @@
 
 public class QuadBucketsTest {
+
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
 
     private void removeAllTest(DataSet ds) {
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/RelationTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/RelationTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/RelationTest.java	(revision 3577)
@@ -8,4 +8,5 @@
 import org.junit.Test;
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.projection.Mercator;
@@ -16,4 +17,5 @@
     public static void setUp() {
         Main.proj = new Mercator();
+        Main.pref = new Preferences();
     }
 
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/visitor/MergeSourceBuildingVisitorTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/visitor/MergeSourceBuildingVisitorTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/visitor/MergeSourceBuildingVisitorTest.java	(revision 3577)
@@ -12,4 +12,5 @@
 import org.junit.Test;
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.osm.DataSet;
@@ -37,4 +38,5 @@
     public static void setUp() {
         Main.proj = new Mercator();
+        Main.pref = new Preferences();
     }
 
Index: /trunk/test/unit/org/openstreetmap/josm/gui/conflict/nodes/NodeListMergeModelTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/conflict/nodes/NodeListMergeModelTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/conflict/nodes/NodeListMergeModelTest.java	(revision 3577)
@@ -16,5 +16,8 @@
 import javax.swing.DefaultListSelectionModel;
 
+import org.junit.BeforeClass;
 import org.junit.Test;
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.osm.DatasetFactory;
 import org.openstreetmap.josm.data.osm.Node;
@@ -26,4 +29,9 @@
     private DatasetFactory my = new DatasetFactory();
     private DatasetFactory their = new DatasetFactory();
+
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
 
     @SuppressWarnings("unchecked")
Index: /trunk/test/unit/org/openstreetmap/josm/gui/conflict/properties/PropertiesMergeModelTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/conflict/properties/PropertiesMergeModelTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/conflict/properties/PropertiesMergeModelTest.java	(revision 3577)
@@ -10,6 +10,8 @@
 
 import org.junit.Before;
+import org.junit.BeforeClass;
 import org.junit.Test;
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.conflict.Conflict;
 import org.openstreetmap.josm.data.coor.LatLon;
@@ -43,8 +45,13 @@
     PropertiesMergeModel model;
 
+    @BeforeClass
+    public static void init() {
+        Main.proj = new Epsg4326();
+        Main.pref = new Preferences();
+    }
+
     @Before
     public void setUp() {
         model = new PropertiesMergeModel();
-        Main.proj = new Epsg4326();
     }
 
Index: /trunk/test/unit/org/openstreetmap/josm/gui/conflict/tags/TagMergeItemTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/conflict/tags/TagMergeItemTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/conflict/tags/TagMergeItemTest.java	(revision 3577)
@@ -2,141 +2,151 @@
 package org.openstreetmap.josm.gui.conflict.tags;
 
-import org.junit.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.fail;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.osm.Node;
 import org.openstreetmap.josm.gui.conflict.pair.MergeDecisionType;
 import org.openstreetmap.josm.gui.conflict.pair.tags.TagMergeItem;
 
-import static org.junit.Assert.*;
-
 public class TagMergeItemTest {
 
-   @Test
-   public void test_TagMergeItem() {
-       TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
-       assertEquals("key", item.getKey());
-       assertEquals("myvalue", item.getMyTagValue());
-       assertEquals("theirvalue", item.getTheirTagValue());
-       assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());
-   }
-   
-   @Test
-   public void test_TagMergeItem_2() {
-       Node n1 = new Node(1); 
-       Node n2 = new Node(1);
-       n1.put("key", "myvalue");
-       n2.put("key", "theirvalue");
-       
-       TagMergeItem item = new TagMergeItem("key", n1, n2);
-       assertEquals("key", item.getKey());
-       assertEquals("myvalue", item.getMyTagValue());
-       assertEquals("theirvalue", item.getTheirTagValue());
-       assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());       
-   }
-   
-   @Test
-   public void test_TagMergeItem_3() {
-       Node n1 = new Node(1); 
-       Node n2 = new Node(1);
-       n1.put("key", "myvalue");
-       // n2 does not have this key
-       
-       TagMergeItem item = new TagMergeItem("key", n1, n2);
-       assertEquals("key", item.getKey());
-       assertEquals("myvalue", item.getMyTagValue());
-       assertNull(item.getTheirTagValue());
-       assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());       
-   }
-   
-   @Test
-   public void test_TagMergeItem_4() {
-       Node n1 = new Node(1); 
-       Node n2 = new Node(1);
-       // n1 does not have this key 
-       // n1.put("key", "myvalue"); 
-       n2.put("key", "theirvalue");
-       
-       TagMergeItem item = new TagMergeItem("key", n1, n2);
-       assertEquals("key", item.getKey());
-       assertNull(item.getMyTagValue());
-       assertEquals("theirvalue",item.getTheirTagValue());
-       assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());       
-   }
-   
-   
-   @Test
-   public void test_decide() {
-       TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
-       item.decide(MergeDecisionType.KEEP_MINE);
-       assertEquals(MergeDecisionType.KEEP_MINE, item.getMergeDecision());       
-   }
-   
-   @Test()
-   public void test_decide_1() {
-       TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
-       try {
-           item.decide(null);
-           fail("expected IllegalArgumentException not thrown");
-       } catch(IllegalArgumentException e) {
-           // OK
-       }            
-   }
-   
-   @Test()
-   public void test_applyToMyPrimitive() {
-       TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
-       item.decide(MergeDecisionType.KEEP_MINE);
-       
-       Node n1 = new Node(1);
-       n1.put("key", "oldvalue");
-       item.applyToMyPrimitive(n1);       
-       assertEquals("myvalue", n1.get("key"));
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
 
-       n1 = new Node(1);       
-       item.applyToMyPrimitive(n1);       
-       assertEquals("myvalue", n1.get("key"));
+    @Test
+    public void test_TagMergeItem() {
+        TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
+        assertEquals("key", item.getKey());
+        assertEquals("myvalue", item.getMyTagValue());
+        assertEquals("theirvalue", item.getTheirTagValue());
+        assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());
+    }
 
-   }
-   
-   @Test()
-   public void test_applyToMyPrimitive_2() {
-       TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
-       item.decide(MergeDecisionType.KEEP_THEIR);
-       
-       Node n1 = new Node(1);
-       n1.put("key", "oldvalue");
-       item.applyToMyPrimitive(n1);       
-       assertEquals("theirvalue", n1.get("key"));
+    @Test
+    public void test_TagMergeItem_2() {
+        Node n1 = new Node(1);
+        Node n2 = new Node(1);
+        n1.put("key", "myvalue");
+        n2.put("key", "theirvalue");
 
-       n1 = new Node(1);       
-       item.applyToMyPrimitive(n1);       
-       assertEquals("theirvalue", n1.get("key"));
-   }
-   
-   @Test()
-   public void test_applyToMyPrimitive_3() {
-       TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
-       // item is undecided
-       // item.decide(MergeDecisionType.KEEP_THEIR);
-       
-       Node n1 = new Node(1);
-       n1.put("key", "oldvalue");
-       try {
-           item.applyToMyPrimitive(n1);
-           fail("expected IllegalStateException");
-       } catch(IllegalStateException e) {
-           // OK 
-       }
-   }
-   
-   @Test()
-   public void test_applyToMyPrimitive_4() {
-       TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
-       
-       try {
-           item.applyToMyPrimitive(null);
-           fail("expected IllegalArgumentException");
-       } catch(IllegalArgumentException e) {
-           // OK 
-       }
-   }
+        TagMergeItem item = new TagMergeItem("key", n1, n2);
+        assertEquals("key", item.getKey());
+        assertEquals("myvalue", item.getMyTagValue());
+        assertEquals("theirvalue", item.getTheirTagValue());
+        assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());
+    }
+
+    @Test
+    public void test_TagMergeItem_3() {
+        Node n1 = new Node(1);
+        Node n2 = new Node(1);
+        n1.put("key", "myvalue");
+        // n2 does not have this key
+
+        TagMergeItem item = new TagMergeItem("key", n1, n2);
+        assertEquals("key", item.getKey());
+        assertEquals("myvalue", item.getMyTagValue());
+        assertNull(item.getTheirTagValue());
+        assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());
+    }
+
+    @Test
+    public void test_TagMergeItem_4() {
+        Node n1 = new Node(1);
+        Node n2 = new Node(1);
+        // n1 does not have this key
+        // n1.put("key", "myvalue");
+        n2.put("key", "theirvalue");
+
+        TagMergeItem item = new TagMergeItem("key", n1, n2);
+        assertEquals("key", item.getKey());
+        assertNull(item.getMyTagValue());
+        assertEquals("theirvalue",item.getTheirTagValue());
+        assertEquals(MergeDecisionType.UNDECIDED, item.getMergeDecision());
+    }
+
+
+    @Test
+    public void test_decide() {
+        TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
+        item.decide(MergeDecisionType.KEEP_MINE);
+        assertEquals(MergeDecisionType.KEEP_MINE, item.getMergeDecision());
+    }
+
+    @Test()
+    public void test_decide_1() {
+        TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
+        try {
+            item.decide(null);
+            fail("expected IllegalArgumentException not thrown");
+        } catch(IllegalArgumentException e) {
+            // OK
+        }
+    }
+
+    @Test()
+    public void test_applyToMyPrimitive() {
+        TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
+        item.decide(MergeDecisionType.KEEP_MINE);
+
+        Node n1 = new Node(1);
+        n1.put("key", "oldvalue");
+        item.applyToMyPrimitive(n1);
+        assertEquals("myvalue", n1.get("key"));
+
+        n1 = new Node(1);
+        item.applyToMyPrimitive(n1);
+        assertEquals("myvalue", n1.get("key"));
+
+    }
+
+    @Test()
+    public void test_applyToMyPrimitive_2() {
+        TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
+        item.decide(MergeDecisionType.KEEP_THEIR);
+
+        Node n1 = new Node(1);
+        n1.put("key", "oldvalue");
+        item.applyToMyPrimitive(n1);
+        assertEquals("theirvalue", n1.get("key"));
+
+        n1 = new Node(1);
+        item.applyToMyPrimitive(n1);
+        assertEquals("theirvalue", n1.get("key"));
+    }
+
+    @Test()
+    public void test_applyToMyPrimitive_3() {
+        TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
+        // item is undecided
+        // item.decide(MergeDecisionType.KEEP_THEIR);
+
+        Node n1 = new Node(1);
+        n1.put("key", "oldvalue");
+        try {
+            item.applyToMyPrimitive(n1);
+            fail("expected IllegalStateException");
+        } catch(IllegalStateException e) {
+            // OK
+        }
+    }
+
+    @Test()
+    public void test_applyToMyPrimitive_4() {
+        TagMergeItem item = new TagMergeItem("key", "myvalue", "theirvalue");
+
+        try {
+            item.applyToMyPrimitive(null);
+            fail("expected IllegalArgumentException");
+        } catch(IllegalArgumentException e) {
+            // OK
+        }
+    }
 }
Index: /trunk/test/unit/org/openstreetmap/josm/gui/conflict/tags/TagMergeModelTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/conflict/tags/TagMergeModelTest.java	(revision 3576)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/conflict/tags/TagMergeModelTest.java	(revision 3577)
@@ -10,5 +10,8 @@
 import java.util.List;
 
+import org.junit.BeforeClass;
 import org.junit.Test;
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Preferences;
 import org.openstreetmap.josm.data.osm.Node;
 import org.openstreetmap.josm.gui.conflict.pair.MergeDecisionType;
@@ -18,4 +21,9 @@
 @SuppressWarnings("unchecked")
 public class TagMergeModelTest {
+
+    @BeforeClass
+    public static void init() {
+        Main.pref = new Preferences();
+    }
 
     @Test
