101 lines
4.2 KiB
Java
101 lines
4.2 KiB
Java
package io.gitlab.jfronny.respackopts;
|
|
|
|
//import io.gitlab.jfronny.respackopts.model.ConfigFile;
|
|
import io.gitlab.jfronny.respackopts.model.tree.*;
|
|
import io.gitlab.jfronny.respackopts.model.enums.ConfigSyncMode;
|
|
import io.gitlab.jfronny.respackopts.model.enums.NumericEntryType;
|
|
//import org.junit.jupiter.api.AfterEach;
|
|
import org.junit.jupiter.api.BeforeAll;
|
|
//import org.junit.jupiter.api.BeforeEach;
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
//import java.nio.file.Files;
|
|
//import java.nio.file.Paths;
|
|
|
|
import static io.gitlab.jfronny.respackopts.Respackopts.*;
|
|
//import static io.gitlab.jfronny.respackopts.Respackopts.CONFIG_BRANCH;
|
|
//import static org.junit.jupiter.api.Assertions.*;
|
|
|
|
class ConfigTreeTest {
|
|
private static final String testEntryName = "test";
|
|
//private static final String testEntry1Name = "test1";
|
|
|
|
@BeforeAll
|
|
static void initialize() {
|
|
/*LOGGER.info("Expected error end");
|
|
FALLBACK_CONF_DIR = Paths.get("./test");
|
|
CONFIG = new ConfigFile();
|
|
assertDoesNotThrow(() -> Files.deleteIfExists(FALLBACK_CONF_DIR.resolve(testEntry1Name + ".json")));
|
|
assertDoesNotThrow(() -> Files.createDirectories(FALLBACK_CONF_DIR));
|
|
SAVE_ACTIONS.add(() -> LOGGER.info("Save"));
|
|
LOGGER.info(FALLBACK_CONF_DIR);*/
|
|
}
|
|
|
|
/*@AfterEach
|
|
void reset() {
|
|
MetaCache.clear();
|
|
MetaCache.save();
|
|
assertEquals(CONFIG_BRANCH.keySet().size(), 0);
|
|
}
|
|
|
|
@BeforeEach
|
|
void initSingle() {
|
|
CONFIG_BRANCH.put(testEntryName, new ConfigBranch());
|
|
assertEquals(CONFIG_BRANCH.keySet().size(), 1);
|
|
}
|
|
|
|
@Test
|
|
void saveLoadSimple() {
|
|
CONFIG_BRANCH.get(testEntryName).add(testEntry1Name, new ConfigBooleanEntry(false));
|
|
assertTrue(CONFIG_BRANCH.get(testEntryName).has(testEntry1Name));
|
|
assertFalse((Boolean) CONFIG_BRANCH.get(testEntryName).get(testEntry1Name).getValue());
|
|
MetaCache.save();
|
|
CONFIG_BRANCH.remove(testEntryName);
|
|
assertEquals(CONFIG_BRANCH.keySet().size(), 0);
|
|
CONFIG_BRANCH.put(testEntryName, new ConfigBranch());
|
|
CONFIG_BRANCH.get(testEntryName).add(testEntry1Name, new ConfigBooleanEntry(false));
|
|
MetaCache.load(testEntryName);
|
|
assertEquals(CONFIG_BRANCH.keySet().size(), 1);
|
|
assertTrue(CONFIG_BRANCH.get(testEntryName).has(testEntry1Name));
|
|
assertFalse((Boolean) CONFIG_BRANCH.get(testEntryName).get(testEntry1Name).getValue());
|
|
}
|
|
|
|
@Test
|
|
void syncSimple() {
|
|
ConfigBranch test = new ConfigBranch();
|
|
test.add(testEntry1Name, new ConfigBooleanEntry(false));
|
|
CONFIG_BRANCH.get(testEntryName).sync(test, ConfigSyncMode.RESPACK_LOAD);
|
|
MetaCache.save();
|
|
MetaCache.load(testEntryName);
|
|
assertFalse((Boolean) CONFIG_BRANCH.get(testEntryName).get(testEntry1Name).getValue());
|
|
assertEquals(CONFIG_BRANCH.keySet().size(), 1);
|
|
assertEquals(test.getValue().size(), 1);
|
|
assertNotNull(CONFIG_BRANCH.get(testEntryName));
|
|
ConfigBooleanEntry be;
|
|
assertTrue(test.get(testEntry1Name) instanceof ConfigBooleanEntry);
|
|
be = (ConfigBooleanEntry)test.get(testEntry1Name);
|
|
be.setValue(true);
|
|
assertFalse((Boolean) CONFIG_BRANCH.get(testEntryName).get(testEntry1Name).getValue());
|
|
LOGGER.info("E");
|
|
CONFIG_BRANCH.get(testEntryName).sync(test, ConfigSyncMode.RESPACK_LOAD);
|
|
assertFalse((Boolean) CONFIG_BRANCH.get(testEntryName).get(testEntry1Name).getValue());
|
|
CONFIG_BRANCH.get(testEntryName).sync(test, ConfigSyncMode.CONF_LOAD);
|
|
MetaCache.save();
|
|
MetaCache.load(testEntryName);
|
|
assertTrue((Boolean) CONFIG_BRANCH.get(testEntryName).get(testEntry1Name).getValue());
|
|
}*/
|
|
|
|
@Test
|
|
void syncWrongType() {
|
|
ConfigBranch cb = new ConfigBranch();
|
|
ConfigBranch cbNew = new ConfigBranch();
|
|
cb.add(testEntryName, new ConfigBooleanEntry(false));
|
|
cbNew.add(testEntryName, new ConfigNumericEntry(NumericEntryType.Slider));
|
|
LOGGER.info("Expecting warning message");
|
|
cbNew.sync(cb, ConfigSyncMode.RESPACK_LOAD);
|
|
LOGGER.info("Expected warning end");
|
|
cbNew.add(testEntryName, new ConfigBooleanEntry(true));
|
|
cbNew.sync(cb, ConfigSyncMode.RESPACK_LOAD);
|
|
}
|
|
}
|