source: josm/trunk/test/unit/org/openstreetmap/josm/gui/layer/LayerTest.java@ 17531

Last change on this file since 17531 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: 4.8 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.layer;
3
4import static org.junit.jupiter.api.Assertions.assertEquals;
5import static org.junit.jupiter.api.Assertions.assertFalse;
6import static org.junit.jupiter.api.Assertions.assertNotNull;
7import static org.junit.jupiter.api.Assertions.assertNull;
8import static org.junit.jupiter.api.Assertions.assertTrue;
9
10import java.io.File;
11
12import org.junit.jupiter.api.BeforeEach;
13import org.junit.jupiter.api.Test;
14import org.junit.jupiter.api.extension.RegisterExtension;
15import org.openstreetmap.josm.data.projection.ProjectionRegistry;
16import org.openstreetmap.josm.testutils.JOSMTestRules;
17
18import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
19
20/**
21 * Test of the base {@link Layer} class
22 * @author Michael Zangl
23 */
24class LayerTest {
25 /**
26 * We need projection
27 */
28 @RegisterExtension
29 @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
30 public JOSMTestRules test = new JOSMTestRules().preferences().projection();
31
32 private Layer testLayer;
33
34 /**
35 * Create test layer
36 */
37 @BeforeEach
38 public void setUp() {
39 testLayer = new LayerManagerTest.TestLayer();
40 }
41
42 /**
43 * Test of {@link Layer#isInfoResizable}
44 */
45 @Test
46 void testIsInfoResizable() {
47 assertFalse(testLayer.isInfoResizable());
48 }
49
50 /**
51 * Test of {@link Layer#getAssociatedFile()} and {@link Layer#setAssociatedFile(java.io.File)}
52 */
53 @Test
54 void testAssociatedFile() {
55 assertNull(testLayer.getAssociatedFile());
56
57 File file = new File("test");
58 testLayer.setAssociatedFile(file);
59 assertEquals(file, testLayer.getAssociatedFile());
60 }
61
62 /**
63 * Test {@link Layer#getName()}
64 */
65 @Test
66 void testGetName() {
67 assertEquals("Test Layer", testLayer.getName());
68 }
69
70 /**
71 * Test {@link Layer#setName(String)}
72 */
73 @Test
74 void testSetName() {
75 testLayer.setName("Test Layer2");
76 assertEquals("Test Layer2", testLayer.getName());
77
78 testLayer = new LayerManagerTest.TestLayer();
79
80 testLayer.setName("Test Layer2");
81 testLayer.setName(null);
82 assertEquals("", testLayer.getName());
83 testLayer.setName("Test Layer3");
84 assertEquals("Test Layer3", testLayer.getName());
85 }
86
87 /**
88 * Test {@link Layer#rename(String)} and {@link Layer#isRenamed()}
89 */
90 @Test
91 void testRename() {
92 assertFalse(testLayer.isRenamed());
93 testLayer.rename("Test Layer2");
94 assertEquals("Test Layer2", testLayer.getName());
95 assertTrue(testLayer.isRenamed());
96 }
97
98 /**
99 * Test {@link Layer#isBackgroundLayer()} and {@link Layer#setBackgroundLayer(boolean)}
100 */
101 @Test
102 void testBackgroundLayer() {
103 assertFalse(testLayer.isBackgroundLayer());
104 testLayer.setBackgroundLayer(true);
105 assertTrue(testLayer.isBackgroundLayer());
106 }
107
108 /**
109 * Test {@link Layer#isVisible()} and {@link Layer#setVisible(boolean)}
110 */
111 @Test
112 void testVisible() {
113 assertTrue(testLayer.isVisible());
114 testLayer.setVisible(false);
115 assertFalse(testLayer.isVisible());
116 testLayer.setVisible(true);
117 assertTrue(testLayer.isVisible());
118 }
119
120 /**
121 * Test {@link Layer#toggleVisible()}
122 */
123 @Test
124 void testToggleVisible() {
125 assertTrue(testLayer.isVisible());
126 testLayer.toggleVisible();
127 assertFalse(testLayer.isVisible());
128 testLayer.toggleVisible();
129 assertTrue(testLayer.isVisible());
130 }
131
132 /**
133 * Test {@link Layer#setOpacity(double)} and {@link Layer#getOpacity()}
134 */
135 @Test
136 void testOpacity() {
137 assertEquals(1, testLayer.getOpacity(), 1e-3);
138
139 testLayer.setOpacity(0.5);
140 assertEquals(0.5, testLayer.getOpacity(), 1e-3);
141
142 testLayer.setOpacity(0);
143 assertFalse(testLayer.isVisible());
144
145 testLayer.setVisible(true);
146 assertTrue(testLayer.isVisible());
147 assertEquals(1, testLayer.getOpacity(), 1e-3);
148 }
149
150 /**
151 * Test {@link Layer#isProjectionSupported(org.openstreetmap.josm.data.projection.Projection)}
152 */
153 @Test
154 void testIsProjectionSupported() {
155 assertFalse(testLayer.isProjectionSupported(null));
156 assertTrue(testLayer.isProjectionSupported(ProjectionRegistry.getProjection()));
157 }
158
159 /**
160 * Test {@link Layer#nameSupportedProjections()}
161 */
162 @Test
163 void testNameSupportedProjections() {
164 assertNotNull(testLayer.nameSupportedProjections());
165 }
166
167 /**
168 * Test {@link Layer#isSavable()}
169 */
170 @Test
171 void testIsSavable() {
172 assertFalse(testLayer.isSavable());
173 }
174
175 /**
176 * Test {@link Layer#checkSaveConditions()}
177 */
178 @Test
179 void testCheckSaveConditions() {
180 assertTrue(testLayer.checkSaveConditions());
181 }
182}
Note: See TracBrowser for help on using the repository browser.