X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F46where_attribute.t;h=a54adb6417b2745c8c5ea873a84eec31aead0142;hb=fcf32d045;hp=6ed31256e726e142522b5bae26858727ba1683e7;hpb=65c2b042016f9bd215b8159586da02f9457ebf96;p=dbsrgits%2FDBIx-Class.git diff --git a/t/46where_attribute.t b/t/46where_attribute.t index 6ed3125..a54adb6 100644 --- a/t/46where_attribute.t +++ b/t/46where_attribute.t @@ -2,12 +2,11 @@ use strict; use warnings; use Test::More; -use Data::Dumper; use lib qw(t/lib); use DBICTest; my $schema = DBICTest->init_schema(); -plan tests => 16; +plan tests => 19; # select from a class with resultset_attributes my $resultset = $schema->resultset('BooksInLibrary'); @@ -72,3 +71,14 @@ eval {$collection->add_to_objects({ value => "Wheel", type => "round" })}; if ($@) { print $@ } ok( !$@, 'many_to_many add_to_$rel($hash) did not throw'); is($round_objects->count, $round_count+1, 'many_to_many add_to_$rel($hash) count correct'); + +# test set_$rel +$round_count = $round_objects->count(); +$pointy_count = $pointy_objects->count(); +my @all_pointy_objects = $pointy_objects->all; +# doing a set on pointy objects with its current set should not change any counts +eval {$collection->set_pointy_objects(\@all_pointy_objects)}; +if ($@) { print $@ } +ok( !$@, 'many_to_many set_$rel(\@objects) did not throw'); +is($pointy_objects->count, $pointy_count, 'many_to_many set_$rel($hash) count correct'); +is($round_objects->count, $round_count, 'many_to_many set_$rel($hash) other rel count correct');