9 plan skip_all => 'Test needs: ' . DBIx::Class::Optional::Dependencies->req_missing_for ('test_cycle')
10 unless ( DBIx::Class::Optional::Dependencies->req_ok_for ('test_cycle') );
15 use Scalar::Util 'weaken';
18 import Test::Memory::Cycle;
23 my $s = $weak->{schema} = DBICTest->init_schema;
24 memory_cycle_ok($s, 'No cycles in schema');
26 my $rs = $weak->{resultset} = $s->resultset ('Artist');
27 memory_cycle_ok($rs, 'No cycles in resultset');
29 my $rsrc = $weak->{resultsource} = $rs->result_source;
30 memory_cycle_ok($rsrc, 'No cycles in resultsource');
32 my $row = $weak->{row} = $rs->first;
33 memory_cycle_ok($row, 'No cycles in row');
35 weaken $_ for values %$weak;
36 memory_cycle_ok($weak, 'No cycles in weak object collection');
40 ok (! $weak->{$_}, "No $_ leaks");