Files
JIMRI/java/test/jmri/jmrit/consisttool/ConsistFileTest.java
T
2026-06-17 14:00:51 +02:00

91 lines
3.1 KiB
Java

package jmri.jmrit.consisttool;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
import java.io.File;
import java.io.IOException;
import jmri.Consist;
import jmri.ConsistManager;
import jmri.DccLocoAddress;
import jmri.InstanceManager;
import jmri.jmrit.roster.Roster;
import jmri.util.JUnitUtil;
import org.junit.jupiter.api.*;
import org.junit.jupiter.api.io.TempDir;
/**
* Test simple functioning of ConsistFile
*
* @author Paul Bender Copyright (C) 2015
*/
public class ConsistFileTest {
@Test
public void testCtor() {
ConsistFile file = new ConsistFile();
assertNotNull(file, "exists");
}
@Test
public void testDefaultFileLocation() {
String fileName = Roster.getDefault().getRosterLocation()
+ "roster" + File.separator
+ "consist" + File.separator;
assertEquals(fileName, ConsistFile.getFileLocation(),
"Consist File Location");
}
@Test
public void testReadFile() throws IOException, org.jdom2.JDOMException {
ConsistFile file = new ConsistFile();
InstanceManager.getDefault(ConsistManager.class);
file.readFile("java/test/jmri/jmrit/consisttool/consist.xml");
}
@Test
public void testWriteFile(@TempDir File folder) throws IOException {
ConsistFile file = new ConsistFile();
ConsistManager cm = InstanceManager.getDefault(ConsistManager.class);
DccLocoAddress addr = new DccLocoAddress(5, false);
Consist c = cm.getConsist(addr);
c.add(new DccLocoAddress(10, false), true);
c.add(new DccLocoAddress(1000, true), false);
String fileName = folder.getPath() + File.separator + "consist.xml";
file.writeFile(cm.getConsistList(), fileName);
assertTrue(new File(fileName).exists(), "file created");
}
@Test
public void testWriteDefaultFile() throws IOException {
ConsistFile file = new ConsistFile();
ConsistManager cm = InstanceManager.getDefault(ConsistManager.class);
DccLocoAddress addr = new DccLocoAddress(5, false);
Consist c = cm.getConsist(addr);
c.add(new DccLocoAddress(10, false), true);
c.add(new DccLocoAddress(1000, true), false);
file.writeFile(cm.getConsistList());
String fileName = ConsistFile.defaultConsistFilename();
assertTrue(new File(fileName).exists(), "file created");
}
@BeforeEach
public void setUp(@TempDir File folder) throws IOException {
JUnitUtil.setUp();
jmri.profile.Profile profile = new jmri.profile.NullProfile(folder);
JUnitUtil.resetProfileManager(profile);
JUnitUtil.initRosterConfigManager();
Roster.getDefault().setRosterLocation("");
InstanceManager.setDefault(ConsistPreferencesManager.class, new ConsistPreferencesManager());
InstanceManager.setDefault(ConsistManager.class, new TestConsistManager());
}
@AfterEach
public void tearDown() {
JUnitUtil.tearDown();
}
}