diff options
author | Patrick Spek <p.spek@tyil.nl> | 2017-04-25 09:52:04 +0200 |
---|---|---|
committer | Patrick Spek <p.spek@tyil.nl> | 2017-04-25 09:54:38 +0200 |
commit | 1040a65e6416d4a9c7f758093d4b17f684e1ddbe (patch) | |
tree | ebf9d2e34a5ce5e8bfa2eba99ea65692d1de4958 /t/01-thing.t | |
parent | cb5db41329c1aab1cb56d7a3e381c53d668af844 (diff) |
Rename to Hash::Merge
Diffstat (limited to 't/01-thing.t')
-rw-r--r-- | t/01-thing.t | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/t/01-thing.t b/t/01-thing.t index 68b092e..4741929 100644 --- a/t/01-thing.t +++ b/t/01-thing.t @@ -1,42 +1,53 @@ -#!/usr/bin/env perl6 +#! /usr/bin/env perl6 + use v6; use lib 'lib'; -use mergehash; use Test; + +use Hash::Merge; + my %a; my %b; + %a<b> = 1; %b<a> = 2; %a<y><z> = 2; %b<y><a> = 1; + my %b-orig = %b; my %a-orig = %a; - %a.merge(%b); is-deeply %b, %b-orig; is-deeply %a, {:a(2), :b(1), :y(${:a(1), :z(2)})}; - %a = %a-orig; %b = %b-orig; %a<Z> = "orig"; %b<Z> = "new"; %a.merge(%b); + is-deeply %a, {Z => 'new', a => 2, b => 1, y => {a => 1, z => 2}}; { my (%z, %y); + %z<y><p> = (1,2,3,4); %y<y><p> = (5,4,6,7); + %z.merge(%y); + is %z, {y => {p => [1, 2, 3, 4, 5, 4, 6, 7]}}, "appends arrays"; } + { my (%z, %y); + %z<y><p> = (1,2,3,4); %y<y><p> = (5,4,6,7); + %z.merge(%y, :no-append-array); + is-deeply %z, ${:y(${:p($(5, 4, 6, 7))})}, "no-append-array (replaces the instead)"; } |