From 7f37ce3dc1736b9113de566a55d9b41ba6d9a120 Mon Sep 17 00:00:00 2001 From: Nathan Adams Date: Sun, 8 Jan 2012 23:29:33 +0000 Subject: Fixed YamlConfiguration creating empty lines when reading a file with no contents, and made it trim the initial newlines of any existing config header --- .../configuration/file/FileConfigurationTest.java | 29 +++++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) (limited to 'src/test/java/org') diff --git a/src/test/java/org/bukkit/configuration/file/FileConfigurationTest.java b/src/test/java/org/bukkit/configuration/file/FileConfigurationTest.java index 2b976725..627ca24e 100644 --- a/src/test/java/org/bukkit/configuration/file/FileConfigurationTest.java +++ b/src/test/java/org/bukkit/configuration/file/FileConfigurationTest.java @@ -170,19 +170,40 @@ public abstract class FileConfigurationTest extends MemoryConfigurationTest { String saved = getTestValuesString(); String header = getTestHeaderResult(); String expected = getTestHeaderInput(); - + defaults.loadFromString(header); config.loadFromString(saved); config.setDefaults(defaults); - + assertNull(config.options().header()); assertEquals(expected, defaults.options().header()); - + for (Map.Entry entry : values.entrySet()) { assertEquals(entry.getValue(), config.get(entry.getKey())); } - + assertEquals(values.keySet(), config.getKeys(true)); assertEquals(header + "\n" + saved, config.saveToString()); + + config = getConfig(); + config.loadFromString(getTestHeaderResult() + saved); + assertEquals(getTestHeaderResult() + saved, config.saveToString()); + } + + @Test + public void testReloadEmptyConfig() throws Exception { + FileConfiguration config = getConfig(); + + assertEquals("", config.saveToString()); + + config = getConfig(); + config.loadFromString(""); + + assertEquals("", config.saveToString()); + + config = getConfig(); + config.loadFromString("\n\n"); // Should trim the first newlines of a header + + assertEquals("", config.saveToString()); } } -- cgit v1.2.3