--- t/manip.t~ 2012-09-27 18:32:39.000000000 +0200 +++ t/manip.t 2014-10-18 17:07:57.145336495 +0200 @@ -18,8 +18,11 @@ $manip_bad = 'Date::Manip cannot determine time zone' unless eval 'Date::Manip::Date_TimeZone(); 1'; } - delete $INC{'Date/Manip.pm'}; - %Date::Manip:: = (); + if ($manip_bad) { + # Clean up %INC and symbol table + delete $INC{'Date/Manip.pm'}; + %Date::Manip:: = (); + } } my $t = 'first thursday in june 2003'; --- t/funcs.t~ 2012-09-27 18:32:39.000000000 +0200 +++ t/funcs.t 2014-10-18 17:03:16.345329214 +0200 @@ -17,13 +17,17 @@ my $manip_notz; BEGIN { $manip_bad = eval('use Date::Manip (); 1')? 0 : 1; - unless ($manip_bad) + if ($manip_bad) + { + # Clean up %INC and symbol table + delete $INC{'Date/Manip.pm'}; + %Date::Manip:: = (); + } + else { # If Date::Manip can't determine the time zone, it'll bomb out of the tests. $manip_notz = eval ('Date::Manip::Date_TimeZone (); 1')? 0 : 1; } - delete $INC{'Date/Manip.pm'}; - %Date::Manip:: = (); } # Get day/month names in current locale --- t/doc.t~ 2012-09-27 18:32:39.000000000 +0200 +++ t/doc.t 2014-10-18 18:08:12.949430255 +0200 @@ -14,13 +14,17 @@ BEGIN { $dm_notok = eval('use Date::Manip (); 1')? 0 : 1; - unless ($dm_notok) + if ($dm_notok) + { + # Clean up %INC and symbol table + delete $INC{'Date/Manip.pm'}; + %Date::Manip:: = (); + } + else { # If Date::Manip can't determine the time zone, it'll bomb out of the tests. $dm_notz = eval('Date::Manip::Date_TimeZone (); 1')? 0 : 1; } - delete $INC{'Date/Manip.pm'}; - %Date::Manip:: = (); } # Were all variables imported? (3)