source: josm/trunk/test/unit/org/openstreetmap/josm/gui/dialogs/properties/PropertiesCellRendererTest.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

File size: 2.1 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.dialogs.properties;
3
4import static org.junit.jupiter.api.Assertions.assertEquals;
5
6import java.util.function.IntFunction;
7
8import javax.swing.JLabel;
9import javax.swing.JTable;
10import javax.swing.table.DefaultTableModel;
11
12import org.junit.jupiter.api.extension.RegisterExtension;
13import org.junit.jupiter.api.Test;
14import org.openstreetmap.josm.testutils.JOSMTestRules;
15
16import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
17
18/**
19 * Unit tests of {@link PropertiesCellRenderer} class.
20 */
21class PropertiesCellRendererTest {
22
23 /**
24 * Setup test.
25 */
26 @RegisterExtension
27 @SuppressFBWarnings(value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD")
28 public JOSMTestRules test = new JOSMTestRules().preferences();
29
30 /**
31 * Test of color rendering.
32 */
33 @Test
34 void testColorRendering() {
35 PropertiesCellRenderer renderer = new PropertiesCellRenderer();
36 DefaultTableModel tableModel = new DefaultTableModel(new Object[][]{
37 new Object[]{"colour", "red"},
38 new Object[]{"colour", "green"},
39 new Object[]{"colour", "#123"},
40 new Object[]{"colour", "#123456"},
41 new Object[]{"colour", "foobarbaz"},
42 new Object[]{"elevation", "314159"},
43 }, new Object[]{"key", "value"});
44 JTable table = new JTable(tableModel);
45 IntFunction<String> getLabel = row -> ((JLabel) renderer.getTableCellRendererComponent(
46 table, table.getValueAt(row, 1), false, false, row, 1)).getText();
47 assertEquals("<html><body><span color='#FF0000'>\u25A0</span> red</body></html>", getLabel.apply(0));
48 assertEquals("<html><body><span color='#008000'>\u25A0</span> green</body></html>", getLabel.apply(1));
49 assertEquals("<html><body><span color='#123'>\u25A0</span> #123</body></html>", getLabel.apply(2));
50 assertEquals("<html><body><span color='#123456'>\u25A0</span> #123456</body></html>", getLabel.apply(3));
51 assertEquals("foobarbaz", getLabel.apply(4));
52 assertEquals("314159", getLabel.apply(5));
53 }
54
55}
Note: See TracBrowser for help on using the repository browser.