summaryrefslogtreecommitdiffstats
path: root/t
diff options
context:
space:
mode:
Diffstat (limited to 't')
-rw-r--r--t/bug-rt-78272.t4
-rw-r--r--t/impl-selection/env.t10
2 files changed, 12 insertions, 2 deletions
diff --git a/t/bug-rt-78272.t b/t/bug-rt-78272.t
index c2bfff4..0d6099b 100644
--- a/t/bug-rt-78272.t
+++ b/t/bug-rt-78272.t
@@ -10,7 +10,7 @@ subtest 'Bug RT-78272: Arbitrary code execution from $ENV' => sub {
like(
exception { require Package::Stash },
- qr/^Could not load Package::Stash::$e/,
+ qr/$e is not a valid implementation for Package::Stash/,
'Arbitrary code in $ENV throws exception'
);
@@ -19,7 +19,7 @@ subtest 'Bug RT-78272: Arbitrary code execution from $ENV' => sub {
delete $INC{'Package/Stash.pm'};
require Package::Stash;
},
- qr/^Could not load Package::Stash::$e/,
+ qr/$e is not a valid implementation for Package::Stash/,
'Sanity check: forcing package reload throws the exception again'
);
diff --git a/t/impl-selection/env.t b/t/impl-selection/env.t
index 3369488..c050267 100644
--- a/t/impl-selection/env.t
+++ b/t/impl-selection/env.t
@@ -26,4 +26,14 @@ SKIP: {
can_ok('Package::Stash', 'new');
}
+{
+ delete $Package::{'Stash::'};
+ delete $INC{'Package/Stash.pm'};
+ set_impl('INVALID');
+ $ENV{PACKAGE_STASH_IMPLEMENTATION} = 'PP';
+ require Package::Stash;
+ is(get_impl, 'PP', '$ENV takes precedence over $Package::Stash::IMPLEMENTATION');
+ can_ok('Package::Stash', 'new');
+}
+
done_testing;