aboutsummaryrefslogtreecommitdiff
path: root/t/03-unit.rakutest
diff options
context:
space:
mode:
authorPatrick Spek <p.spek@tyil.nl>2020-11-15 08:47:32 +0100
committerPatrick Spek <p.spek@tyil.nl>2020-11-15 08:47:32 +0100
commitb27da2a93cc42afcf16ab539dc7aa1a84d12ee8c (patch)
tree53507a0a534140338bdc0520bc5b05b255bf38f8 /t/03-unit.rakutest
parent35e9b52620d540f79baac2c93caa19f4b8258679 (diff)
Rename Perl 6 to Raku
Diffstat (limited to 't/03-unit.rakutest')
-rw-r--r--t/03-unit.rakutest59
1 files changed, 59 insertions, 0 deletions
diff --git a/t/03-unit.rakutest b/t/03-unit.rakutest
new file mode 100644
index 0000000..75d763f
--- /dev/null
+++ b/t/03-unit.rakutest
@@ -0,0 +1,59 @@
+#! /usr/bin/env raku
+
+use v6.c;
+
+use Hash::Merge;
+use Test;
+
+plan 2;
+
+subtest "merge-hash" => {
+ plan 2;
+
+ my %original =
+ a => "a",
+ b => {
+ c => "c"
+ }
+ ;
+
+ my %result =
+ a => "a",
+ b => {
+ c => "c",
+ d => "d",
+ },
+ ;
+
+ is-deeply merge-hash(%original, %(b => %(d => "d"))), %result, "Hash merges correctly";
+ is-deeply merge-hash(%original, %()), %original, "Empty Hash doesn't affect original";
+}
+
+subtest "merge-hashes" => {
+ plan 4;
+
+ my %original =
+ a => "a",
+ b => {
+ c => "c"
+ }
+ ;
+
+ my %result =
+ a => "a",
+ b => {
+ c => "c",
+ d => "d",
+ },
+ ;
+
+ is-deeply merge-hashes(%original), %original, "Single argument returns original";
+ is-deeply merge-hashes(%original, %(b => %(d => "d"))), %result, "Hash merges correctly";
+ is-deeply merge-hashes(%original, %()), %original, "Empty Hash doesn't affect original";
+
+ %result<b><e> = "e";
+
+ is-deeply merge-hashes(%original, %(b => %(d => "d")), %(b => %(e => "e"))), %result, "Hash merges correctly";
+}
+
+# vim: ft=raku ts=4 sw=4 et