chdir
t_dir or
die
"Failed to change test dir"
;
my
$test
;
my
$shared
= catfile(
'..'
,
'..'
,
'_data'
);
my
@cmd
= ($^X, catfile(
'..'
,
'..'
,
'..'
,
'ndproc'
),
'--module'
,
'Remove'
);
$test
=
"path"
;
run_ok(
name
=>
$test
,
pre
=>
sub
{ copy(
"$shared/deep-down-lorem.a.json"
,
"$test.got"
) },
cmd
=> [
@cmd
,
'--path'
,
'{some}[0..5]'
,
"$test.got"
],
test
=>
sub
{ files_eq_or_diff(
"$test.exp"
,
"$test.got"
,
$test
) },
);
$test
=
"path_absent"
;
run_ok(
name
=>
$test
,
pre
=>
sub
{ copy(
"$shared/empty_hash.json"
,
"$test.got"
) },
cmd
=> [
@cmd
,
"$test.got"
],
test
=>
sub
{ files_eq_or_diff(
"$test.exp"
,
"$test.got"
,
$test
) },
);
$test
=
"path_empty"
;
run_ok(
name
=>
$test
,
pre
=>
sub
{ copy(
"$shared/empty_hash.json"
,
"$test.got"
) },
cmd
=> [
@cmd
,
'--path'
,
''
,
"$test.got"
],
test
=>
sub
{ files_eq_or_diff(
"$test.exp"
,
"$test.got"
,
$test
) },
);
$test
=
"path_strict"
;
run_ok(
name
=>
$test
,
pre
=>
sub
{ copy(
"$shared/deep-down-lorem.a.json"
,
"$test.got"
) },
cmd
=> [
@cmd
,
'--path'
,
'{some}[1000]'
,
'--strict'
,
"$test.got"
],
stderr
=>
qr/ FATAL] Failed to resolve path '\{some\}\[1000\]'/
,
exit
=> 4,
);
$test
=
"preserve"
;
run_ok(
name
=>
$test
,
pre
=>
sub
{ copy(
"$shared/menu.a.json"
,
"$test.got"
) },
cmd
=> [
@cmd
,
'--path'
,
'[]'
,
'--preserve'
,
'[]{}[]{id}'
,
"$test.got"
],
test
=>
sub
{ files_eq_or_diff(
"$test.exp"
,
"$test.got"
,
$test
) },
);