source: josm/trunk/test/unit/org/openstreetmap/josm/data/validation/tests/ConditionalKeysTest.java@ 11403

Last change on this file since 11403 was 11403, checked in by Don-vip, 7 years ago

replace groovy validator unit tests by java ones

  • Property svn:eol-style set to native
File size: 2.6 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.data.validation.tests;
3
4import static org.junit.Assert.assertFalse;
5import static org.junit.Assert.assertTrue;
6
7import org.junit.Before;
8import org.junit.Test;
9import org.openstreetmap.josm.JOSMFixture;
10import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
11
12/**
13 * Unit test of {@link ConditionalKeys}.
14 */
15public class ConditionalKeysTest {
16
17 private final ConditionalKeys test = new ConditionalKeys();
18
19 /**
20 * Setup test
21 * @throws Exception if an error occurs
22 */
23 @Before
24 public void setUp() throws Exception {
25 JOSMFixture.createUnitTestFixture().init();
26 TaggingPresets.readFromPreferences();
27 test.initialize();
28 }
29
30 /**
31 * Unit test of {@link ConditionalKeys#isKeyValid}.
32 */
33 @Test
34 public void testKeyValid() {
35 assertTrue(test.isKeyValid("maxspeed:conditional"));
36 assertTrue(test.isKeyValid("motor_vehicle:conditional"));
37 assertTrue(test.isKeyValid("bicycle:conditional"));
38 assertTrue(test.isKeyValid("overtaking:hgv:conditional"));
39 assertTrue(test.isKeyValid("maxspeed:hgv:backward:conditional"));
40 assertTrue(test.isKeyValid("oneway:backward:conditional"));
41 assertTrue(test.isKeyValid("fee:conditional"));
42 assertFalse(test.isKeyValid("maxspeed:hgv:conditional:backward"));
43 }
44
45 /**
46 * Unit test of {@link ConditionalKeys#isValueValid}.
47 */
48 @Test
49 public void testValueValid() {
50 assertTrue(test.isValueValid("maxspeed:conditional", "120 @ (06:00-19:00)"));
51 assertFalse(test.isValueValid("maxspeed:conditional", " @ (06:00-19:00)"));
52 assertFalse(test.isValueValid("maxspeed:conditional", "120 (06:00-19:00)"));
53 assertFalse(test.isValueValid("maxspeed:conditional", "120 @ ()"));
54 assertFalse(test.isValueValid("maxspeed:conditional", "120 @ "));
55 assertFalse(test.isValueValid("maxspeed:conditional", "120 @ (06:00/19:00)"));
56 assertTrue(test.isValueValid("maxspeed:conditional", "120 @ (06:00-20:00); 100 @ (22:00-06:00)"));
57 assertTrue(test.isValueValid("motor_vehicle:conditional", "delivery @ (Mo-Fr 06:00-11:00,17:00-19:00;Sa 03:30-19:00)"));
58 assertTrue(test.isValueValid("motor_vehicle:conditional", "no @ (10:00-18:00 AND length>5)"));
59 assertFalse(test.isValueValid("motor_vehicle:conditional", "foo @ (10:00-18:00 AND length>5)"));
60 assertFalse(test.isValueValid("motor_vehicle:conditional", "no @ (10:00until18:00 AND length>5)"));
61 assertTrue(test.isValueValid("maxspeed:hgv:conditional", "60 @ (weight>7.5)"));
62 }
63}
Note: See TracBrowser for help on using the repository browser.