Untangle strictly-DBICTest constant from the main constant set
[dbsrgits/DBIx-Class.git] / t / 52leaks.t
index b61856d..cfeaadc 100644 (file)
@@ -23,16 +23,16 @@ use strict;
 use warnings;
 use Test::More;
 
+BEGIN {
+  require DBICTest::Util;
+  plan skip_all => "Your perl version $] appears to leak like a sieve - skipping test"
+    if DBICTest::Util::PEEPEENESS();
+}
 
 use DBICTest::RunMode;
 use DBICTest::Util::LeakTracer qw(populate_weakregistry assert_empty_weakregistry visit_refs);
 use Scalar::Util qw(weaken blessed reftype);
 use DBIx::Class::_Util qw(hrefaddr sigwarn_silencer modver_gt_or_eq modver_gt_or_eq_and_lt);
-BEGIN {
-  plan skip_all => "Your perl version $] appears to leak like a sieve - skipping test"
-    if DBIx::Class::_ENV_::PEEPEENESS;
-}
-
 
 my $TB = Test::More->builder;
 if ($ENV{DBICTEST_IN_PERSISTENT_ENV}) {
@@ -443,6 +443,10 @@ for my $addr (keys %$weak_registry) {
     # T::B 2.0 has result objects and other fancyness
     delete $weak_registry->{$addr};
   }
+  elsif ($names =~ /^Class::Struct/m) {
+    # remove this when Path::Class is gone, what a crock of shit
+    delete $weak_registry->{$addr};
+  }
   elsif ($names =~ /^Hash::Merge/m) {
     # only clear one object of a specific behavior - more would indicate trouble
     delete $weak_registry->{$addr}