X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FVPIT-TestHelpers.git;a=blobdiff_plain;f=lib%2FVPIT%2FTestHelpers.pm;h=30c6bc02c5a841742397efd3f06de4440b753c46;hp=3d545e887a78dbdccb62c79c423618bbd12a0629;hb=c5c8848158218fd477eb23f81f58ac221dacd7f9;hpb=e8344578d5e1adee2159ae5490719996d6834bdb diff --git a/lib/VPIT/TestHelpers.pm b/lib/VPIT/TestHelpers.pm index 3d545e8..30c6bc0 100644 --- a/lib/VPIT/TestHelpers.pm +++ b/lib/VPIT/TestHelpers.pm @@ -6,6 +6,7 @@ use warnings; my %exports = ( load_or_skip => \&load_or_skip, load_or_skip_all => \&load_or_skip_all, + run_perl => \&run_perl, skip_all => \&skip_all, ); @@ -102,6 +103,17 @@ sub load_or_skip_all { return $loaded; } +sub run_perl { + my $code = shift; + + my ($SystemRoot, $PATH) = @ENV{qw}; + local %ENV; + $ENV{SystemRoot} = $SystemRoot if $^O eq 'MSWin32' and defined $SystemRoot; + $ENV{PATH} = $PATH if $^O eq 'cygwin' and defined $PATH; + + system { $^X } $^X, '-T', map("-I$_", @INC), '-e', $code; +} + package VPIT::TestHelpers::Guard; sub new {