aboutsummaryrefslogtreecommitdiff
path: root/t/01-reading.t
diff options
context:
space:
mode:
authorPatrick Spek <p.spek@tyil.nl>2017-04-26 23:10:00 +0200
committerPatrick Spek <p.spek@tyil.nl>2023-07-25 02:16:20 +0200
commitc8f98009fa544c43e1ad30efdb41b3b16574027d (patch)
tree990e016095549d0b7c052d0855b60eb7d34daeea /t/01-reading.t
parent312b33592df7409745b44503e5558bb173a8e6f7 (diff)
Rename test files
Diffstat (limited to 't/01-reading.t')
-rw-r--r--t/01-reading.t40
1 files changed, 40 insertions, 0 deletions
diff --git a/t/01-reading.t b/t/01-reading.t
new file mode 100644
index 0000000..0792188
--- /dev/null
+++ b/t/01-reading.t
@@ -0,0 +1,40 @@
+#! /usr/bin/env perl6
+
+use v6.c;
+use Test;
+use lib "lib";
+
+plan 5;
+
+use Config;
+
+my $config = Config.new();
+
+throws-like { $config.read("t/files/none") }, Config::Exception::FileNotFoundException, "Reading nonexisting file";
+throws-like { $config.read("t/files/config") }, Config::Exception::UnknownTypeException, "Reading file of unknown type";
+throws-like { $config.read("t/files/config", "Config::Parser:NoSuchParserForTest") }, Config::Exception::MissingParserException, "Using non-existing parser";
+
+my $hash = {
+ "a" => "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" => "a",
+ "b" => {
+ "c" => "test",
+ "d" => "another"
+ }
+}, "Correctly merges new hash into existing config";