Changeset 6927 in josm for trunk/test/unit/org/openstreetmap
- Timestamp:
- 2014-03-24T00:48:17+01:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/test/unit/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSParserTest.groovy
r6859 r6927 5 5 import org.openstreetmap.TestUtils 6 6 import org.openstreetmap.josm.Main 7 import org.openstreetmap.josm.data.Preferences 7 import org.openstreetmap.josm.data.coor.LatLon 8 import org.openstreetmap.josm.data.osm.DataSet 8 9 import org.openstreetmap.josm.data.osm.OsmPrimitive 9 10 import org.openstreetmap.josm.data.osm.Way 11 import org.openstreetmap.josm.data.projection.Projections 10 12 import org.openstreetmap.josm.gui.mappaint.Environment 11 13 import org.openstreetmap.josm.gui.mappaint.MultiCascade 12 14 import org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.MapCSSParser 13 15 import org.openstreetmap.josm.tools.ColorHelper 14 import org.openstreetmap.josm.tools.Utils15 16 16 17 import java.awt.Color … … 34 35 @Before 35 36 public void setUp() throws Exception { 36 Main.pref = new Preferences() 37 Main.initApplicationPreferences() 38 Main.setProjection(Projections.getProjectionByCode("EPSG:3857")); 37 39 } 38 40 … … 252 254 assert ColorHelper.html2color("#12345678") == new Color(0x12, 0x34, 0x56, 0x78) 253 255 } 256 257 @Test 258 public void testSiblingSelector() throws Exception { 259 def s1 = (Selector.ChildOrParentSelector) getParser("*[a?][parent_tag(\"highway\")=\"unclassified\"] + *[b?]").child_selector() 260 def ds = new DataSet() 261 def n1 = new org.openstreetmap.josm.data.osm.Node(new LatLon(1, 2)) 262 n1.put("a", "true") 263 def n2 = new org.openstreetmap.josm.data.osm.Node(new LatLon(1.1, 2.2)) 264 n2.put("b", "true") 265 def w = new Way() 266 w.put("highway", "unclassified") 267 ds.addPrimitive(n1) 268 ds.addPrimitive(n2) 269 ds.addPrimitive(w) 270 w.addNode(n1) 271 w.addNode(n2) 272 273 def e = new Environment().withPrimitive(n2) 274 assert s1.matches(e) 275 assert e.osm == n2 276 assert e.child == n1 277 assert e.parent == w 278 assert !s1.matches(new Environment().withPrimitive(n1)) 279 assert !s1.matches(new Environment().withPrimitive(w)) 280 } 281 282 @Test 283 public void testSiblingSelectorInterpolation() throws Exception { 284 def s1 = (Selector.ChildOrParentSelector) getParser( 285 "*[tag(\"addr:housenumber\") > child_tag(\"addr:housenumber\")][regexp_test(\"even|odd\", parent_tag(\"addr:interpolation\"))]" + 286 " + *[addr:housenumber]").child_selector() 287 def ds = new DataSet() 288 def n1 = new org.openstreetmap.josm.data.osm.Node(new LatLon(1, 2)) 289 n1.put("addr:housenumber", "10") 290 def n2 = new org.openstreetmap.josm.data.osm.Node(new LatLon(1.1, 2.2)) 291 n2.put("addr:housenumber", "100") 292 def n3 = new org.openstreetmap.josm.data.osm.Node(new LatLon(1.2, 2.3)) 293 n3.put("addr:housenumber", "20") 294 def w = new Way() 295 w.put("addr:interpolation", "even") 296 ds.addPrimitive(n1) 297 ds.addPrimitive(n2) 298 ds.addPrimitive(n3) 299 ds.addPrimitive(w) 300 w.addNode(n1) 301 w.addNode(n2) 302 w.addNode(n3) 303 304 assert s1.right.matches(new Environment().withPrimitive(n3)) 305 assert s1.left.matches(new Environment().withPrimitive(n2).withChild(n3).withParent(w)) 306 assert s1.matches(new Environment().withPrimitive(n3)) 307 assert !s1.matches(new Environment().withPrimitive(n1)) 308 assert !s1.matches(new Environment().withPrimitive(n2)) 309 assert !s1.matches(new Environment().withPrimitive(w)) 310 } 254 311 }
Note:
See TracChangeset
for help on using the changeset viewer.