From fb014751bbcf785b4e43b9f622ab8114d496be09 Mon Sep 17 00:00:00 2001 From: Patrick Spek Date: Wed, 26 Apr 2017 08:17:33 +0200 Subject: Update test cases --- t/having.t | 2 ++ t/reading.t | 25 +++++++++++++++++++++++++ t/setting.t | 2 ++ 3 files changed, 29 insertions(+) (limited to 't') diff --git a/t/having.t b/t/having.t index 3be2935..7c3a67e 100644 --- a/t/having.t +++ b/t/having.t @@ -19,3 +19,5 @@ $config.read({ ok $config.has("a"), "Check existence of simple key"; ok $config.has("b.c"), "Check existence of nested key"; +ok $config.has(["a"]), "Check existence of simple key using array"; +ok $config.has(["b", "c"]), "Check existence of nested key using array"; diff --git a/t/reading.t b/t/reading.t index 52859af..ec1c40b 100644 --- a/t/reading.t +++ b/t/reading.t @@ -13,3 +13,28 @@ my $config = Config.new(); throws-like { $config.read("nonexistant-config") }, Config::Exception::FileNotFoundException, "Reading nonexisting file"; throws-like { $config.read("t/test-stub") }, Config::Exception::UnknownTypeException, "Reading file of unknown type"; throws-like { $config.read("t/test-stub", "Config::Parser:NoSuchParserForTest") }, Config::Exception::MissingParserException, "Using non-existing parser"; + +my $hash = { + "a" => + "b" => { + "c" => "test" + } +}; + +$config.read($hash); + +is-deeply $config.get(), $hash, "Correctly sets hash"; + +$config.read({ + "b" => { + "d" => "another" + } +}) + +is-deeply $config.get(), { + "a" => + "b" => { + "c" => "test", + "d" => "another" + } +}, "Correctly merges new hash into existing config"; diff --git a/t/setting.t b/t/setting.t index d9f0854..18790cf 100644 --- a/t/setting.t +++ b/t/setting.t @@ -12,3 +12,5 @@ my $config = Config.new(); ok $config.set("a", "test").get("a") eq "test", "Setting simple key"; ok $config.set("b.c", "test").get("b.c") eq "test", "Setting nested key"; +ok $config.set(["d"], "test").get("d") eq "test", "Setting simple key using array"; +ok $config.set(["e", "f"], "test").get("e.f") eq "test", "Setting nested key using array"; -- cgit v1.1