Files
JIMRI/java/test/jmri/jmrix/can/cbus/node/CbusNodeBackupFileTest.java
T
2026-06-17 14:00:51 +02:00

89 lines
2.7 KiB
Java

package jmri.jmrix.can.cbus.node;
import java.io.File;
import java.nio.file.Path;
import jmri.jmrix.can.CanSystemConnectionMemo;
import jmri.util.*;
import org.junit.jupiter.api.*;
import org.junit.jupiter.api.io.TempDir;
/**
*
* @author Paul Bender Copyright (C) 2017
* @author Steve Young Copyright (C) 2019
*/
public class CbusNodeBackupFileTest {
@Test
public void testCTorNull() {
CbusNodeBackupFile t = new CbusNodeBackupFile(null);
Assertions.assertNotNull(t,"exists");
}
@Test
public void testCTorMemo() {
CbusNodeBackupFile t = new CbusNodeBackupFile(memo);
Assertions.assertNotNull(t,"exists");
}
@Test
public void testDeleteNodeNotExist() {
CbusNodeBackupFile t = new CbusNodeBackupFile(memo);
Assertions.assertNotNull(t,"exists");
Assertions.assertTrue(t.deleteFile(999));
}
@Test
public void testProvideNewFile() {
CbusNodeBackupFile t = new CbusNodeBackupFile(memo);
Assertions.assertNull(t.getFile(777, false),"file not created");
Assertions.assertNotNull(t.getFile(777, true),"file created");
}
@Test
public void testMigrate() throws java.io.IOException {
CbusNode node = new CbusNode(memo,41376);
CbusNodeBackupManager t = new CbusNodeBackupManager(node);
CbusNodeBackupFile nbaf = new CbusNodeBackupFile(memo);
java.io.File dir = new java.io.File("java/test/jmri/jmrix/can/cbus/node/");
java.io.File systemFile = new java.io.File(dir, "41376.xml");
FileUtil.createDirectory(nbaf.oldFileLocation);
File newFile = new File (nbaf.oldFileLocation, "41376.xml");
java.nio.file.Files.copy(systemFile.toPath(), newFile.toPath(),
java.nio.file.StandardCopyOption.REPLACE_EXISTING);
Assertions.assertEquals(0, t.getBackups().size(),"File should not be loaded");
t.doLoad();
Assertions.assertEquals(14, t.getBackups().size(), "File loaded");
JUnitAppender.assertWarnMessage("Migrated existing CBUS Node Data to CAN");
}
private CanSystemConnectionMemo memo = null;
@BeforeEach
public void setUp( @TempDir Path tempDir ) throws java.io.IOException {
JUnitUtil.setUp();
JUnitUtil.resetProfileManager( new jmri.profile.NullProfile( tempDir.toFile()));
memo = new CanSystemConnectionMemo();
memo.configureManagers(); // no manager but will register memo to instancemanager
}
@AfterEach
public void tearDown() {
Assertions.assertNotNull(memo);
memo.dispose();
memo = null;
JUnitUtil.tearDown();
}
// private static final Logger log = LoggerFactory.getLogger(CbusNodeBackupFile.class);
}