diff options
-rw-r--r-- | t/Test/Sbotools.pm | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/t/Test/Sbotools.pm b/t/Test/Sbotools.pm index 4cdd286..ab7468c 100644 --- a/t/Test/Sbotools.pm +++ b/t/Test/Sbotools.pm @@ -32,6 +32,7 @@ our @EXPORT_OK = qw/ make_slackbuilds_txt restore_perf_dummy replace_tags_txt + load /; local $Test::Builder::Level = $Test::Builder::Level + 1; @@ -149,4 +150,22 @@ END { } } +sub load { + my ($script, %opts) = @_; + + local @ARGV = exists $opts{argv} ? @{ $opts{argv} } : '-h'; + my ($ret, $exit, $out, $do_err); + my $eval = eval { + $out = capture_merged { $exit = exit_code { + $ret = do "$RealBin/../$script"; + $do_err = $@; + }; }; + 1; + }; + my $err = $@; + + note explain { ret => $ret, exit => $exit, out => $out, eval => $eval, err => $err, do_err => $do_err } if $opts{explain}; +} + + 1; |