source: josm/trunk/test/unit/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanelTest.java@ 17275

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

see #16567 - upgrade almost all tests to JUnit 5, except those depending on WiremockRule

See https://github.com/tomakehurst/wiremock/issues/684

  • Property svn:eol-style set to native
File size: 3.3 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.dialogs.validator;
3
4import static org.junit.jupiter.api.Assertions.assertEquals;
5import static org.junit.jupiter.api.Assertions.assertNotNull;
6import static org.junit.jupiter.api.Assertions.assertNull;
7
8import java.util.ArrayList;
9import java.util.Arrays;
10import java.util.Collections;
11import java.util.Enumeration;
12import java.util.HashSet;
13import java.util.Set;
14
15import org.junit.jupiter.api.extension.RegisterExtension;
16import org.junit.jupiter.api.Test;
17import org.openstreetmap.josm.data.osm.Node;
18import org.openstreetmap.josm.data.osm.OsmPrimitive;
19import org.openstreetmap.josm.data.validation.Severity;
20import org.openstreetmap.josm.data.validation.TestError;
21import org.openstreetmap.josm.testutils.JOSMTestRules;
22
23import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
24
25/**
26 * Unit tests of {@link ValidatorTreePanel} class.
27 */
28class ValidatorTreePanelTest {
29
30 /**
31 * Setup tests
32 */
33 @RegisterExtension
34 @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
35 public JOSMTestRules test = new JOSMTestRules().preferences();
36
37 /**
38 * Unit test of {@link ValidatorTreePanel#ValidatorTreePanel}.
39 */
40 @Test
41 void testValidatorTreePanel() {
42 assertNotNull(new ValidatorTreePanel());
43
44 ValidatorTreePanel vtp = new ValidatorTreePanel(new ArrayList<>(Arrays.asList(
45 TestError.builder(null, Severity.ERROR, 0)
46 .message("err")
47 .primitives(new Node(1))
48 .build(),
49 TestError.builder(null, Severity.WARNING, 0)
50 .message("warn", "foo")
51 .primitives(new Node(2))
52 .build(),
53 TestError.builder(null, Severity.WARNING, 0)
54 .message("warn", "bar")
55 .primitives(new Node(2))
56 .build())));
57 assertNotNull(vtp);
58 final Enumeration<?> nodes = vtp.getRoot().breadthFirstEnumeration();
59 assertEquals("", nodes.nextElement().toString());
60 assertEquals("Errors (1)", nodes.nextElement().toString());
61 assertEquals("Warnings (2)", nodes.nextElement().toString());
62 assertEquals("err (1)", nodes.nextElement().toString());
63 assertEquals("warn (2)", nodes.nextElement().toString());
64 nodes.nextElement();
65 assertEquals("bar (1)", nodes.nextElement().toString());
66 assertEquals("foo (1)", nodes.nextElement().toString());
67 vtp.setVisible(true);
68 vtp.setVisible(false);
69 Node n = new Node(10);
70 vtp.setErrors(Arrays.asList(TestError.builder(null, Severity.ERROR, 0)
71 .message("")
72 .primitives(n)
73 .build()));
74 assertEquals(1, vtp.getErrors().size());
75 vtp.selectRelatedErrors(Collections.<OsmPrimitive>singleton(n));
76 vtp.expandAll();
77 assertNotNull(vtp.getRoot());
78 vtp.resetErrors();
79 Set<? extends OsmPrimitive> filter = new HashSet<>(Arrays.asList(n));
80 vtp.setFilter(filter);
81 assertEquals(filter, vtp.getFilter());
82 vtp.setFilter(new HashSet<OsmPrimitive>());
83 assertNull(vtp.getFilter());
84 vtp.setFilter(null);
85 assertNull(vtp.getFilter());
86 vtp.destroy();
87 }
88}
Note: See TracBrowser for help on using the repository browser.