fileset: reverse search/replace parameters
[perl/file-rewrite.git] / t / 10-fileset.t
index c405a9bb92a508f955abf91aba84a96ec6b3235d..bf859de2090f36d81819e09978a677c0d0e7b657 100644 (file)
@@ -47,28 +47,28 @@ sub testfileset {
 
 my $BASICBODY = "replace$/noremove$/remove$/.$/";
 
-testfileset('no match',      $BASICBODY,    [undef, 'nomatch'], 0, $BASICBODY);
-testfileset('remove string', $BASICBODY,    [undef, 'remove'],  1, "replace$/noremove$/.$/");
-testfileset('remove empty',  "$/.$/ $/$/",  [undef, ''],        2, ".$/ $/");
-testfileset('remove regex',  $BASICBODY,    [undef, qr/^re/],   2);
-testfileset('remove all',    $BASICBODY,    [undef, qr/./],     4, '');
+testfileset('no match',      $BASICBODY,    ['nomatch' => undef], 0, $BASICBODY);
+testfileset('remove string', $BASICBODY,    ['remove'  => undef], 1, "replace$/noremove$/.$/");
+testfileset('remove empty',  "$/.$/ $/$/",  [''        => undef], 2, ".$/ $/");
+testfileset('remove regex',  $BASICBODY,    [qr/^re/   => undef], 2);
+testfileset('remove all',    $BASICBODY,    [qr/./     => undef], 4, '');
 
-testfileset('add unconditionally', "$/0$/", ['0', undef],       1, "$/0$/0$/");
+testfileset('add unconditionally', "$/0$/", [undef()   => '0'], 1, "$/0$/0$/");
 testfileset('add string',     "foo$/",      ['bar'],            1, "foo$/bar$/");
 testfileset('keep string',    "foo$/bar$/", ['foo'],            0, "foo$/bar$/");
 testfileset('keep first',     "foo$/FOO$/foo$/", ['foo'],       1, "foo$/FOO$/");
-testfileset('replace string', "$/0$/1$/2$/", [3, 0],            2, "$/1$/2$/3$/");
-testfileset('keep regex',     "foo$/hi$/$/", ['hi', qr/./],     1, "hi$/$/");
+testfileset('replace string', "$/0$/1$/2$/", [0 => 3],          2, "$/1$/2$/3$/");
+testfileset('keep regex',     "foo$/hi$/$/", [qr/./ => 'hi'],   1, "hi$/$/");
 
-testfileset('add new array',  ".$/",        [['foo','.'], ''],  2, ".$/foo$/.$/");
-testfileset('replace by array', "$/foo$/.$/", [['foo',''], ''], 3, "foo$/.$/foo$/$/");
-testfileset('partial add',    "foo$/$/",    [['foo','.'], 'foo'], 1, "foo$/$/.$/");
+testfileset('add new array',  ".$/",        ['' => ['foo','.']],  2, ".$/foo$/.$/");
+testfileset('replace by array', "$/foo$/.$/", ['' => ['foo','']], 3, "foo$/.$/foo$/$/");
+testfileset('partial add',    "foo$/$/",    ['foo' => ['foo','.']], 1, "foo$/$/.$/");
 
 my $SAMPLE2 = "$/foo$/and$/bar$/.$/";
 testfileset('keep pair',      $SAMPLE2, [['foo','bar']], 0, "$/foo$/and$/bar$/.$/");
 testfileset('keep order',     $SAMPLE2, [['bar','foo']], 2, "$/and$/bar$/.$/foo$/");
-testfileset('replace pair',   $SAMPLE2, [['fooo','barr'], ['bar','foo']], 4, "$/and$/.$/fooo$/barr$/");
-testfileset('mixed arrays',   $SAMPLE2, [['bar','foo','.'],['ignore',qr/a/]], 3, "$/foo$/bar$/.$/foo$/.$/");
+testfileset('replace pair',   $SAMPLE2, [['bar','foo'] => ['fooo','barr']], 4, "$/and$/.$/fooo$/barr$/");
+testfileset('mixed arrays',   $SAMPLE2, [['ignore',qr/a/] => ['bar','foo','.']], 3, "$/foo$/bar$/.$/foo$/.$/");
 
 is(remove_tree($target), 19, 'no unexpected files');