Index: trunk/test/unit/org/openstreetmap/josm/tools/OverpassTurboQueryWizardTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/tools/OverpassTurboQueryWizardTest.java	(revision 16261)
+++ trunk/test/unit/org/openstreetmap/josm/tools/OverpassTurboQueryWizardTest.java	(revision 16262)
@@ -39,4 +39,5 @@
     public void testKeyValue() {
         assertQueryEquals("  nwr[\"amenity\"=\"drinking_water\"];\n", "amenity=drinking_water");
+        assertQueryEquals("  nwr[\"amenity\"];\n", "amenity=*");
     }
 
@@ -46,6 +47,6 @@
     @Test
     public void testKeyNotValue() {
-        assertQueryEquals("  nwr[\"amenity\"!=\"drinking_water\"];\n", "amenity!=drinking_water");
-        assertQueryEquals("  nwr[\"amenity\"!=\"drinking_water\"];\n", "amenity<>drinking_water");
+        assertQueryEquals("  nwr[\"amenity\"!=\"drinking_water\"];\n", "-amenity=drinking_water");
+        assertQueryEquals("  nwr[!\"amenity\"];\n", "-amenity=*");
     }
 
@@ -57,13 +58,18 @@
         assertQueryEquals("  nwr[\"foo\"~\"bar\"];\n", "foo~bar");
         assertQueryEquals("  nwr[\"foo\"~\"bar\"];\n", "foo~/bar/");
-        assertQueryEquals("  nwr[\"foo\"~\"bar\"];\n", "foo~=bar");
-        assertQueryEquals("  nwr[\"foo\"~\"bar\"];\n", "foo~=/bar/");
-        assertQueryEquals("  nwr[\"foo\"~\"bar\"];\n", "foo like bar");
-        assertQueryEquals("  nwr[\"foo\"~\"bar\"];\n", "foo like /bar/");
         // case insensitive
         assertQueryEquals("  nwr[\"foo\"~\"bar\",i];\n", "foo~/bar/i");
         // negated
-        assertQueryEquals("  nwr[\"foo\"!~\"bar\"];\n", "foo!~bar");
-        assertQueryEquals("  nwr[\"foo\"!~\"bar\"];\n", "foo not like bar");
+        assertQueryEquals("  nwr[\"foo\"!~\"bar\"];\n", "-foo~bar");
+        assertQueryEquals("  nwr[\"foo\"!~\"bar\",i];\n", "-foo~/bar/i");
+    }
+
+    /**
+     * Test OSM boolean true/false.
+     */
+    @Test
+    public void testOsmBoolean() {
+        assertQueryEquals("  nwr[\"highway\"][\"oneway\"~\"true|yes|1|on\"];\n", "highway=* AND oneway?");
+        assertQueryEquals("  nwr[\"highway\"][\"oneway\"~\"false|no|0|off\"];\n", "highway=* AND -oneway?");
     }
 
@@ -84,5 +90,4 @@
     public void testBooleanOr() {
         assertQueryEquals("  nwr[\"foo\"=\"bar\"];\n  nwr[\"baz\"=\"42\"];\n", "foo=bar or baz=42");
-        assertQueryEquals("  nwr[\"foo\"=\"bar\"];\n  nwr[\"baz\"=\"42\"];\n", "foo=bar || baz=42");
         assertQueryEquals("  nwr[\"foo\"=\"bar\"];\n  nwr[\"baz\"=\"42\"];\n", "foo=bar | baz=42");
     }
@@ -118,5 +123,5 @@
     @Test
     public void testUser() {
-        assertQueryEquals("  nwr(user:\"foo\");\n  nwr(uid:42);\n", "user:foo or uid:42");
+        assertQueryEquals("  nwr(user:\"foo\");\n  nwr(uid:42);\n", "user:foo or user:42");
     }
 
@@ -126,5 +131,5 @@
     @Test
     public void testEmpty() {
-        assertQueryEquals("  way[\"foo\"~\"^$\"];\n", "foo='' and type:way");
+        assertQueryEquals("  way[\"foo\"~\"^$\"];\n", "foo=\"\" and type:way");
     }
 
@@ -220,5 +225,5 @@
     @Test(expected = UncheckedParseException.class)
     public void testErroneous() {
-        OverpassTurboQueryWizard.getInstance().constructQuery("foo");
+        OverpassTurboQueryWizard.getInstance().constructQuery("-(foo or bar)");
     }
 }
