X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=t%2Funit_core_merge_config_hashes.t;fp=t%2Funit_core_merge_config_hashes.t;h=0ee7657f73e0c44d115a6135d6d6872a864e8bd4;hp=0000000000000000000000000000000000000000;hb=390f59b30132af5b036f737f85599491a3fd10bc;hpb=baf6a3dbf99be93d8e8bd9b986a95ad1d81a61ca diff --git a/t/unit_core_merge_config_hashes.t b/t/unit_core_merge_config_hashes.t new file mode 100644 index 0000000..0ee7657 --- /dev/null +++ b/t/unit_core_merge_config_hashes.t @@ -0,0 +1,43 @@ +use strict; +use warnings; + +use Test::More; + +my @tests = ( + { + given => [ { a => 1 }, { b => 1 } ], + expects => { a => 1, b => 1 } + }, + { + given => [ { a => 1 }, { a => { b => 1 } } ], + expects => { a => { b => 1 } } + }, + { + given => [ { a => { b => 1 } }, { a => 1 } ], + expects => { a => 1 } + }, + { + given => [ { a => 1 }, { a => [ 1 ] } ], + expects => { a => [ 1 ] } + }, + { + given => [ { a => [ 1 ] }, { a => 1 } ], + expects => { a => 1 } + }, + { + given => [ { a => { b => 1 } }, { a => { b => 2 } } ], + expects => { a => { b => 2 } } + }, + { + given => [ { a => { b => 1 } }, { a => { c => 1 } } ], + expects => { a => { b => 1, c => 1 } } + }, +); + +plan tests => scalar @tests + 1; + +use_ok('Catalyst'); + +for my $test ( @ tests ) { + is_deeply( Catalyst->merge_config_hashes( @{ $test->{ given } } ), $test->{ expects } ); +}