160 lines
5.2 KiB
Java
160 lines
5.2 KiB
Java
package jmri.jmrit.roster.swing.attributetable;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
|
|
import jmri.jmrit.roster.Roster;
|
|
import jmri.jmrit.roster.RosterEntry;
|
|
import jmri.util.JUnitUtil;
|
|
|
|
import org.jdom2.Element;
|
|
|
|
import org.junit.jupiter.api.*;
|
|
|
|
/**
|
|
* Tests for the roster.swing.attributetable.AttributeTableModel class.
|
|
*
|
|
* @author Bob Jacobsen Copyright (C) 2009
|
|
*/
|
|
public class AttributeTableModelTest {
|
|
|
|
@Test
|
|
public void testTableLength() {
|
|
AttributeTableModel t = new AttributeTableModel();
|
|
|
|
assertEquals(NENTRIES, t.getRowCount());
|
|
}
|
|
|
|
@Test
|
|
public void testTableWidth() {
|
|
AttributeTableModel t = new AttributeTableModel();
|
|
|
|
assertEquals(NKEYS, t.getColumnCount());
|
|
}
|
|
|
|
@Test
|
|
public void testColumnName() {
|
|
AttributeTableModel t = new AttributeTableModel();
|
|
|
|
assertEquals("key b", t.getColumnName(1));
|
|
}
|
|
|
|
@Test
|
|
public void testGetValueAt() {
|
|
AttributeTableModel t = new AttributeTableModel();
|
|
|
|
assertEquals("value 1", t.getValueAt(0, 0));
|
|
assertEquals("", t.getValueAt(0, 1));
|
|
assertEquals("", t.getValueAt(0, 2));
|
|
assertEquals("", t.getValueAt(0, 3));
|
|
assertEquals("value 11", t.getValueAt(1, 0));
|
|
assertEquals("value 12", t.getValueAt(1, 1));
|
|
assertEquals("value 13", t.getValueAt(1, 2));
|
|
assertEquals("value 14", t.getValueAt(1, 3));
|
|
assertEquals("", t.getValueAt(2, 0));
|
|
assertEquals("", t.getValueAt(2, 1));
|
|
assertEquals("", t.getValueAt(2, 2));
|
|
assertEquals("", t.getValueAt(2, 3));
|
|
}
|
|
|
|
// create a standard test roster
|
|
private static final int NENTRIES = 3;
|
|
private static final int NKEYS = 4;
|
|
|
|
@BeforeEach
|
|
public void setUp() {
|
|
JUnitUtil.setUp();
|
|
|
|
JUnitUtil.resetProfileManager();
|
|
JUnitUtil.initRosterConfigManager();
|
|
|
|
// first entry
|
|
Element e;
|
|
RosterEntry r;
|
|
|
|
e = new org.jdom2.Element("locomotive")
|
|
.setAttribute("id", "id 1")
|
|
.setAttribute("fileName", "file here")
|
|
.setAttribute("roadNumber", "431")
|
|
.setAttribute("roadName", "SP")
|
|
.setAttribute("mfg", "Athearn")
|
|
.setAttribute("dccAddress", "1234")
|
|
.addContent(new org.jdom2.Element("decoder")
|
|
.setAttribute("family", "91")
|
|
.setAttribute("model", "33")
|
|
)
|
|
.addContent(new org.jdom2.Element("locoaddress")
|
|
.addContent(new org.jdom2.Element("dcclocoaddress")
|
|
.setAttribute("number", "12")
|
|
.setAttribute("longaddress", "yes")
|
|
)
|
|
); // end create element
|
|
|
|
r = new RosterEntry(e) {
|
|
@Override
|
|
protected void warnShortLong(String s) {
|
|
}
|
|
};
|
|
Roster.getDefault().addEntry(r);
|
|
r.putAttribute("key a", "value 1");
|
|
|
|
e = new org.jdom2.Element("locomotive")
|
|
.setAttribute("id", "id 2")
|
|
.setAttribute("fileName", "file here")
|
|
.setAttribute("roadNumber", "431")
|
|
.setAttribute("roadName", "SP")
|
|
.setAttribute("mfg", "Athearn")
|
|
.addContent(new org.jdom2.Element("decoder")
|
|
.setAttribute("family", "91")
|
|
.setAttribute("model", "33")
|
|
)
|
|
.addContent(new org.jdom2.Element("locoaddress")
|
|
.addContent(new org.jdom2.Element("dcclocoaddress")
|
|
.setAttribute("number", "12")
|
|
.setAttribute("longaddress", "yes")
|
|
)
|
|
); // end create element
|
|
|
|
r = new RosterEntry(e) {
|
|
@Override
|
|
protected void warnShortLong(String s) {
|
|
}
|
|
};
|
|
Roster.getDefault().addEntry(r);
|
|
r.putAttribute("key a", "value 11");
|
|
r.putAttribute("key b", "value 12");
|
|
r.putAttribute("key c", "value 13");
|
|
r.putAttribute("key d", "value 14");
|
|
|
|
e = new org.jdom2.Element("locomotive")
|
|
.setAttribute("id", "id 3")
|
|
.setAttribute("fileName", "file here")
|
|
.setAttribute("roadNumber", "431")
|
|
.setAttribute("roadName", "SP")
|
|
.setAttribute("mfg", "Athearn")
|
|
.addContent(new org.jdom2.Element("decoder")
|
|
.setAttribute("family", "91")
|
|
.setAttribute("model", "33")
|
|
)
|
|
.addContent(new org.jdom2.Element("locoaddress")
|
|
.addContent(new org.jdom2.Element("dcclocoaddress")
|
|
.setAttribute("number", "12")
|
|
.setAttribute("longaddress", "yes")
|
|
)
|
|
); // end create element
|
|
|
|
r = new RosterEntry(e) {
|
|
@Override
|
|
protected void warnShortLong(String s) {
|
|
}
|
|
};
|
|
Roster.getDefault().addEntry(r);
|
|
|
|
}
|
|
|
|
@AfterEach
|
|
public void tearDown() {
|
|
JUnitUtil.tearDown();
|
|
}
|
|
|
|
}
|