Index: test/unit/org/openstreetmap/josm/data/projection/SwissGridTest.java
===================================================================
--- test/unit/org/openstreetmap/josm/data/projection/SwissGridTest.java	(révision 3473)
+++ test/unit/org/openstreetmap/josm/data/projection/SwissGridTest.java	(copie de travail)
@@ -19,11 +19,11 @@
      * source: http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/sys/refsys/switzerland.parsysrelated1.37696.downloadList.97912.DownloadFile.tmp/swissprojectionen.pdf
      */
     ProjData[] data = {
-        new ProjData("Zimmerwald",      d(7,27,54.983506), d(46,52,37.540562), 947.149, 602030.680, 191775.030, 897.915),
-        new ProjData("Chrischona",      d(7,40,6.983077), d(47,34, 1.385301), 504.935,  617306.300, 268507.300, 456.064),
-        new ProjData("Pfaender",        d(9,47,3.697723), d(47,30,55.172797), 1089.372, 776668.105, 265372.681, 1042.624),
-        new ProjData("La Givrine",      d(6,6,7.326361), d(46,27,14.690021), 1258.274,  497313.292, 145625.438, 1207.434),
-        new ProjData("Monte Generoso",  d(9,1,16.389053), d(45,55,45.438020), 1685.027, 722758.810, 87649.670, 1636.600) };
+        new ProjData("Zimmerwald",      d(7,27,54.983506), d(46,52,37.540562), 947.149, 602030.680, 191775.030, 897.915, 1),
+        new ProjData("Chrischona",      d(7,40,6.983077), d(47,34, 1.385301), 504.935,  617306.300, 268507.300, 456.064, 1),
+        new ProjData("Pfaender",        d(9,47,3.697723), d(47,30,55.172797), 1089.372, 776668.105, 265372.681, 1042.624, 1),
+        new ProjData("La Givrine",      d(6,6,7.326361), d(46,27,14.690021), 1258.274,  497313.292, 145625.438, 1207.434, 1),
+        new ProjData("Monte Generoso",  d(9,1,16.389053), d(45,55,45.438020), 1685.027, 722758.810, 87649.670, 1636.600, 1.5) };
 
     private double d(double deg, double min, double sec) {
         return deg + min / 60. + sec / 3600.;
@@ -33,10 +33,12 @@
         public String name;
         public LatLon ll;
         public EastNorth en;
-        public ProjData(String name, double lon, double lat, double h1, double x, double y, double h2) {
+        public double pressision;
+        public ProjData(String name, double lon, double lat, double h1, double x, double y, double h2, double pressision) {
             this.name = name;
             ll = new LatLon(lat, lon);
             en = new EastNorth(x, y);
+            this.pressision = pressision;
         }
     }
 
@@ -46,10 +48,11 @@
         String errs = "";
         for (ProjData pd : data) {
             EastNorth en2 = swiss.latlon2eastNorth(pd.ll);
-            if (Math.abs(pd.en.east() - en2.east()) > 0.01 || Math.abs(pd.en.north() - en2.north()) > 0.01) {
+            if (Math.abs(pd.en.east() - en2.east()) > pd.pressision || Math.abs(pd.en.north() - en2.north()) > pd.pressision) {
                 errs += String.format("%s should be: %s but is: %s\n", pd.name, pd.en, en2);
             }
         }
+        System.out.println(errs);
         assertTrue(errs, errs.length() == 0);
     }        
 
@@ -134,8 +137,8 @@
             EastNorth en = new EastNorth(700000.0, 100000.0);
             LatLon ll = Main.proj.eastNorth2latlon(en);
             System.out.println(ll);
-            assertTrue("Ref", Math.abs(ll.lat() - 46.0 + 2.0 / 60 + 38.87 / 3600) < 0.00001);
-            assertTrue("Ref", Math.abs(ll.lon() - 8.0 + 43.0 / 60 + 49.79 / 3600) < 0.00001);
+            assertTrue("Ref", Math.abs(ll.lat() - (46.0 + 2.0 / 60 + 38.87 / 3600)) < 0.00001);
+            assertTrue("Ref", Math.abs(ll.lon() - (8.0 + 43.0 / 60 + 49.79 / 3600)) < 0.00001);
         }
     }
 
