Makefile.PL
MANIFEST
README
+t/confused.t
t/disable-die.t
t/disable-safe.t
+t/intermediate-direct.t
+t/intermediate-indirect.t
+t/intermediate-unrelated.t
+t/lax-direct.t
+t/lax-indirect.t
+t/lax-unrelated.t
t/strict-die.t
t/strict-safe.t
t/t1/Direct.pm
t/t2/Dies.pm
t/t2/Evil.pm
t/t2/Survives.pm
+t/t3/Evil.pm
+t/t3/IntermediateDirect.pm
+t/t3/IntermediateIndirect.pm
+t/t3/LaxDirect.pm
+t/t3/LaxIndirect.pm
+t/t3/UnrelatedIntermediate.pm
+t/t3/UnrelatedLax.pm
+t/t3/UsesEvil.pm
+t/t4/ConfusedIntermediate1.pm
+t/t4/ConfusedIntermediate2.pm
+t/t4/ConfusedLax1.pm
+t/t4/ConfusedLax2.pm
+t/t4/ConfusedStrict1.pm
+t/t4/ConfusedStrict2.pm
--- /dev/null
+#!/usr/bin/perl
+use Test::More tests => 6;
+
+ok !eval {require t::t4::ConfusedStrict1 }, 'Confused strict 1 dies';
+%evil::wants_strict = ();
+ok !eval {require t::t4::ConfusedIntermediate1 }, 'Confused intermediate 1 dies';
+ok !eval {require t::t4::ConfusedLax1 }, 'Confused lax 1 dies';
+ok !eval {require t::t4::ConfusedStrict2 }, 'Confused strict 2 dies';
+%evil::wants_strict = ();
+ok !eval {require t::t4::ConfusedIntermediate2 }, 'Confused intermediate 2 dies';
+ok !eval {require t::t4::ConfusedLax2 }, 'Confused lax 2 dies';
use Test::More tests => 1;
ok !eval { require t::t2::Dies }, 'Unrelated dies';
-
--- /dev/null
+#!/usr/bin/perl
+use Test::More tests => 1;
+
+ok !eval {require t::t3::IntermediateDirect }, 'Direct intermediate dies';
--- /dev/null
+#!/usr/bin/perl
+use Test::More tests => 1;
+
+ok !eval {require t::t3::IntermediateIndirect }, 'Indirect intermediate dies';
--- /dev/null
+#!/usr/bin/perl
+use Test::More tests => 2;
+
+require_ok 't::t3::Evil';
+require_ok 't::t3::UnrelatedIntermediate';
--- /dev/null
+#!/usr/bin/perl
+use Test::More tests => 1;
+
+ok !eval {require t::t3::LaxDirect }, 'Direct lax dies';
--- /dev/null
+#!/usr/bin/perl
+use Test::More tests => 1;
+
+require_ok 't::t3::LaxIndirect';
--- /dev/null
+#!/usr/bin/perl
+use Test::More tests => 2;
+
+require_ok 't::t3::Evil';
+require_ok 't::t3::UnrelatedLax';
require_ok 't::t1::Direct';
require_ok 't::t1::Indirect';
ok !eval { require t::t1::Unrelated }, 'Unrelated dies';
-
--- /dev/null
+package t::t3::Evil;
+use evil;
+1;
--- /dev/null
+package t::t3::IntermediateDirect;
+no evil;
+use t::t3::Evil;
+1;
--- /dev/null
+package t::t3::IntermediateIndirect;
+no evil;
+use t::t3::UsesEvil;
+1;
--- /dev/null
+package t::t3::LaxDirect;
+no evil ':lax';
+use t::t3::Evil;
+1;
--- /dev/null
+package t::t3::LaxIndirect;
+no evil ':lax';
+use t::t3::UsesEvil;
+1;
--- /dev/null
+package t::t3::UnrelatedIntermediate;
+no evil;
+1;
--- /dev/null
+package t::t3::UnrelatedLax;
+no evil ':lax';
+1;
--- /dev/null
+package t::t3::UsesEvil;
+use t::t3::Evil;
+1;
--- /dev/null
+#!/usr/bin/perl
+no evil;
+use evil;
+1;
--- /dev/null
+#!/usr/bin/perl
+use evil;
+no evil;
+1;
--- /dev/null
+#!/usr/bin/perl
+no evil ':lax';
+use evil;
+1;
--- /dev/null
+#!/usr/bin/perl
+use evil;
+no evil ':lax';
+1;
--- /dev/null
+#!/usr/bin/perl
+no evil ':strict';
+use evil;
+1;
--- /dev/null
+#!/usr/bin/perl
+use evil;
+no evil ':strict';
+1;