Changeset 10837 in josm for trunk/test/unit/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSParserTest.groovy
- Timestamp:
- 2016-08-18T03:39:22+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/test/unit/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSParserTest.groovy
r10193 r10837 14 14 import org.openstreetmap.josm.gui.mappaint.Environment 15 15 import org.openstreetmap.josm.gui.mappaint.MultiCascade 16 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.ClassCondition 17 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.KeyCondition 18 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.KeyMatchType 19 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.KeyValueCondition 20 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.Op 21 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.PseudoClassCondition 22 import org.openstreetmap.josm.gui.mappaint.mapcss.ConditionFactory.SimpleKeyValueCondition 16 23 import org.openstreetmap.josm.gui.mappaint.mapcss.parsergen.MapCSSParser 17 24 import org.openstreetmap.josm.tools.ColorHelper … … 50 57 public void testClassCondition() throws Exception { 51 58 def conditions = ((Selector.GeneralSelector) getParser("way[name=X].highway:closed").selector()).conds 52 assert conditions.get(0) instanceof Condition.SimpleKeyValueCondition59 assert conditions.get(0) instanceof SimpleKeyValueCondition 53 60 assert conditions.get(0).applies(getEnvironment("name", "X")) 54 assert conditions.get(1) instanceof C ondition.ClassCondition55 assert conditions.get(2) instanceof Condition.PseudoClassCondition61 assert conditions.get(1) instanceof ClassCondition 62 assert conditions.get(2) instanceof PseudoClassCondition 56 63 assert !conditions.get(2).applies(getEnvironment("name", "X")) 57 64 } … … 93 100 @Test 94 101 public void testEqualCondition() throws Exception { 95 def condition = ( Condition.SimpleKeyValueCondition) getParser("[surface=paved]").condition(Condition.Context.PRIMITIVE)96 assert condition instanceof Condition.SimpleKeyValueCondition102 def condition = (SimpleKeyValueCondition) getParser("[surface=paved]").condition(Condition.Context.PRIMITIVE) 103 assert condition instanceof SimpleKeyValueCondition 97 104 assert "surface".equals(condition.k) 98 105 assert "paved".equals(condition.v) … … 103 110 @Test 104 111 public void testNotEqualCondition() throws Exception { 105 def condition = ( Condition.KeyValueCondition) getParser("[surface!=paved]").condition(Condition.Context.PRIMITIVE)106 assert Condition.Op.NEQ.equals(condition.op)112 def condition = (KeyValueCondition) getParser("[surface!=paved]").condition(Condition.Context.PRIMITIVE) 113 assert Op.NEQ.equals(condition.op) 107 114 assert !condition.applies(getEnvironment("surface", "paved")) 108 115 assert condition.applies(getEnvironment("surface", "unpaved")) … … 111 118 @Test 112 119 public void testRegexCondition() throws Exception { 113 def condition = ( Condition.KeyValueCondition) getParser("[surface=~/paved|unpaved/]").condition(Condition.Context.PRIMITIVE)114 assert Condition.Op.REGEX.equals(condition.op)120 def condition = (KeyValueCondition) getParser("[surface=~/paved|unpaved/]").condition(Condition.Context.PRIMITIVE) 121 assert Op.REGEX.equals(condition.op) 115 122 assert condition.applies(getEnvironment("surface", "unpaved")) 116 123 assert !condition.applies(getEnvironment("surface", "grass")) … … 119 126 @Test 120 127 public void testRegexConditionParenthesis() throws Exception { 121 def condition = ( Condition.KeyValueCondition) getParser("[name =~ /^\\(foo\\)/]").condition(Condition.Context.PRIMITIVE)128 def condition = (KeyValueCondition) getParser("[name =~ /^\\(foo\\)/]").condition(Condition.Context.PRIMITIVE) 122 129 assert condition.applies(getEnvironment("name", "(foo)")) 123 130 assert !condition.applies(getEnvironment("name", "foo")) … … 127 134 @Test 128 135 public void testNegatedRegexCondition() throws Exception { 129 def condition = ( Condition.KeyValueCondition) getParser("[surface!~/paved|unpaved/]").condition(Condition.Context.PRIMITIVE)130 assert Condition.Op.NREGEX.equals(condition.op)136 def condition = (KeyValueCondition) getParser("[surface!~/paved|unpaved/]").condition(Condition.Context.PRIMITIVE) 137 assert Op.NREGEX.equals(condition.op) 131 138 assert !condition.applies(getEnvironment("surface", "unpaved")) 132 139 assert condition.applies(getEnvironment("surface", "grass")) … … 135 142 @Test 136 143 public void testBeginsEndsWithCondition() throws Exception { 137 def condition = ( Condition.KeyValueCondition) getParser('[foo ^= bar]').condition(Condition.Context.PRIMITIVE)138 assert Condition.Op.BEGINS_WITH.equals(condition.op)144 def condition = (KeyValueCondition) getParser('[foo ^= bar]').condition(Condition.Context.PRIMITIVE) 145 assert Op.BEGINS_WITH.equals(condition.op) 139 146 assert condition.applies(getEnvironment("foo", "bar123")) 140 147 assert !condition.applies(getEnvironment("foo", "123bar")) 141 148 assert !condition.applies(getEnvironment("foo", "123bar123")) 142 condition = ( Condition.KeyValueCondition) getParser('[foo $= bar]').condition(Condition.Context.PRIMITIVE)143 assert Condition.Op.ENDS_WITH.equals(condition.op)149 condition = (KeyValueCondition) getParser('[foo $= bar]').condition(Condition.Context.PRIMITIVE) 150 assert Op.ENDS_WITH.equals(condition.op) 144 151 assert !condition.applies(getEnvironment("foo", "bar123")) 145 152 assert condition.applies(getEnvironment("foo", "123bar")) … … 158 165 @Test 159 166 public void testStandardKeyCondition() throws Exception { 160 def c1 = ( Condition.KeyCondition) getParser("[ highway ]").condition(Condition.Context.PRIMITIVE)161 assert Condition.KeyMatchType.EQ.equals(c1.matchType)167 def c1 = (KeyCondition) getParser("[ highway ]").condition(Condition.Context.PRIMITIVE) 168 assert KeyMatchType.EQ.equals(c1.matchType) 162 169 assert c1.applies(getEnvironment("highway", "unclassified")) 163 170 assert !c1.applies(getEnvironment("railway", "rail")) 164 def c2 = ( Condition.KeyCondition) getParser("[\"/slash/\"]").condition(Condition.Context.PRIMITIVE)165 assert Condition.KeyMatchType.EQ.equals(c2.matchType)171 def c2 = (KeyCondition) getParser("[\"/slash/\"]").condition(Condition.Context.PRIMITIVE) 172 assert KeyMatchType.EQ.equals(c2.matchType) 166 173 assert c2.applies(getEnvironment("/slash/", "yes")) 167 174 assert !c2.applies(getEnvironment("\"slash\"", "no")) … … 170 177 @Test 171 178 public void testYesNoKeyCondition() throws Exception { 172 def c1 = ( Condition.KeyCondition) getParser("[oneway?]").condition(Condition.Context.PRIMITIVE)173 def c2 = ( Condition.KeyCondition) getParser("[oneway?!]").condition(Condition.Context.PRIMITIVE)174 def c3 = ( Condition.KeyCondition) getParser("[!oneway?]").condition(Condition.Context.PRIMITIVE)175 def c4 = ( Condition.KeyCondition) getParser("[!oneway?!]").condition(Condition.Context.PRIMITIVE)179 def c1 = (KeyCondition) getParser("[oneway?]").condition(Condition.Context.PRIMITIVE) 180 def c2 = (KeyCondition) getParser("[oneway?!]").condition(Condition.Context.PRIMITIVE) 181 def c3 = (KeyCondition) getParser("[!oneway?]").condition(Condition.Context.PRIMITIVE) 182 def c4 = (KeyCondition) getParser("[!oneway?!]").condition(Condition.Context.PRIMITIVE) 176 183 def yes = getEnvironment("oneway", "yes") 177 184 def no = getEnvironment("oneway", "no") … … 193 200 @Test 194 201 public void testRegexKeyCondition() throws Exception { 195 def c1 = ( Condition.KeyCondition) getParser("[/.*:(backward|forward)\$/]").condition(Condition.Context.PRIMITIVE)196 assert Condition.KeyMatchType.REGEX.equals(c1.matchType)202 def c1 = (KeyCondition) getParser("[/.*:(backward|forward)\$/]").condition(Condition.Context.PRIMITIVE) 203 assert KeyMatchType.REGEX.equals(c1.matchType) 197 204 assert !c1.applies(getEnvironment("lanes", "3")) 198 205 assert c1.applies(getEnvironment("lanes:forward", "3")) … … 214 221 @Test 215 222 public void testKeyKeyCondition() throws Exception { 216 def c1 = ( Condition.KeyValueCondition) getParser("[foo = *bar]").condition(Condition.Context.PRIMITIVE)223 def c1 = (KeyValueCondition) getParser("[foo = *bar]").condition(Condition.Context.PRIMITIVE) 217 224 def w1 = new Way() 218 225 w1.put("foo", "123") … … 221 228 w1.put("bar", "123") 222 229 assert c1.applies(new Environment(w1)) 223 def c2 = ( Condition.KeyValueCondition) getParser("[foo =~ */bar/]").condition(Condition.Context.PRIMITIVE)230 def c2 = (KeyValueCondition) getParser("[foo =~ */bar/]").condition(Condition.Context.PRIMITIVE) 224 231 def w2 = new Way(w1) 225 232 w2.put("bar", "[0-9]{3}")
Note:
See TracChangeset
for help on using the changeset viewer.