From 885cc9a87e7d136781808be3bbc7c82ac2110842 Mon Sep 17 00:00:00 2001 From: Christian Koop Date: Sun, 26 Jun 2022 01:35:42 +0200 Subject: [PATCH] Fix `YamlConfiruration#getKeys("")` not returning root node keys --- .../core/configuration/yaml/YamlConfiguration.java | 8 ++++++-- .../core/configuration/yaml/YamlConfigurationTest.java | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Core/src/main/java/com/songoda/core/configuration/yaml/YamlConfiguration.java b/Core/src/main/java/com/songoda/core/configuration/yaml/YamlConfiguration.java index 04d42701..17893a2c 100644 --- a/Core/src/main/java/com/songoda/core/configuration/yaml/YamlConfiguration.java +++ b/Core/src/main/java/com/songoda/core/configuration/yaml/YamlConfiguration.java @@ -96,6 +96,10 @@ public class YamlConfiguration implements IConfiguration, HeaderCommentable, Nod return Collections.emptySet(); } + if (key.equals("")) { + return Collections.unmodifiableSet(this.values.keySet()); + } + Map innerMap = null; try { @@ -260,8 +264,8 @@ public class YamlConfiguration implements IConfiguration, HeaderCommentable, Nod @Override public String toString() { return "YamlConfiguration{" + - "values=" + values + - ", headerComment=" + headerComment + + "values=" + this.values + + ", headerComment=" + this.headerComment + '}'; } diff --git a/Core/src/test/java/com/songoda/core/configuration/yaml/YamlConfigurationTest.java b/Core/src/test/java/com/songoda/core/configuration/yaml/YamlConfigurationTest.java index e0ccccf1..b3f76630 100644 --- a/Core/src/test/java/com/songoda/core/configuration/yaml/YamlConfigurationTest.java +++ b/Core/src/test/java/com/songoda/core/configuration/yaml/YamlConfigurationTest.java @@ -274,7 +274,7 @@ class YamlConfigurationTest { final YamlConfiguration cfg = new YamlConfiguration(); cfg.load(new StringReader(inputYaml)); - assertTrue(cfg.getKeys("").isEmpty()); + assertEquals(2, cfg.getKeys("").size()); assertTrue(cfg.getKeys(null).isEmpty()); assertTrue(cfg.getKeys("primitives.map.key.non-existing-subkey").isEmpty());