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

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

fix unit test

  • Property svn:eol-style set to native
File size: 2.7 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.Rule;
9import org.junit.Test;
10import org.openstreetmap.josm.testutils.JOSMTestRules;
11
12import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
13
14/**
15 * Unit test of {@link ConditionalKeys}.
16 */
17public class ConditionalKeysTest {
18
19 private final ConditionalKeys test = new ConditionalKeys();
20
21 /**
22 * Setup test
23 */
24 @Rule
25 @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
26 public JOSMTestRules rule = new JOSMTestRules().presets();
27
28 /**
29 * Setup test
30 * @throws Exception if an error occurs
31 */
32 @Before
33 public void setUp() throws Exception {
34 test.initialize();
35 }
36
37 /**
38 * Unit test of {@link ConditionalKeys#isKeyValid}.
39 */
40 @Test
41 public void testKeyValid() {
42 assertTrue(test.isKeyValid("maxspeed:conditional"));
43 assertTrue(test.isKeyValid("motor_vehicle:conditional"));
44 assertTrue(test.isKeyValid("bicycle:conditional"));
45 assertTrue(test.isKeyValid("overtaking:hgv:conditional"));
46 assertTrue(test.isKeyValid("maxspeed:hgv:backward:conditional"));
47 assertTrue(test.isKeyValid("oneway:backward:conditional"));
48 assertTrue(test.isKeyValid("fee:conditional"));
49 assertFalse(test.isKeyValid("maxspeed:hgv:conditional:backward"));
50 }
51
52 /**
53 * Unit test of {@link ConditionalKeys#isValueValid}.
54 */
55 @Test
56 public void testValueValid() {
57 assertTrue(test.isValueValid("maxspeed:conditional", "120 @ (06:00-19:00)"));
58 assertFalse(test.isValueValid("maxspeed:conditional", " @ (06:00-19:00)"));
59 assertFalse(test.isValueValid("maxspeed:conditional", "120 (06:00-19:00)"));
60 assertFalse(test.isValueValid("maxspeed:conditional", "120 @ ()"));
61 assertFalse(test.isValueValid("maxspeed:conditional", "120 @ "));
62 assertFalse(test.isValueValid("maxspeed:conditional", "120 @ (06:00/19:00)"));
63 assertTrue(test.isValueValid("maxspeed:conditional", "120 @ (06:00-20:00); 100 @ (22:00-06:00)"));
64 assertTrue(test.isValueValid("motor_vehicle:conditional", "delivery @ (Mo-Fr 06:00-11:00,17:00-19:00;Sa 03:30-19:00)"));
65 assertTrue(test.isValueValid("motor_vehicle:conditional", "no @ (10:00-18:00 AND length>5)"));
66 assertFalse(test.isValueValid("motor_vehicle:conditional", "foo @ (10:00-18:00 AND length>5)"));
67 assertFalse(test.isValueValid("motor_vehicle:conditional", "no @ (10:00until18:00 AND length>5)"));
68 assertTrue(test.isValueValid("maxspeed:hgv:conditional", "60 @ (weight>7.5)"));
69 }
70}
Note: See TracBrowser for help on using the repository browser.