X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fp5-DBIx-Class-ResultSet-RecursiveUpdate;a=blobdiff_plain;f=t%2F96multi_create.t;h=9ffd13172ec83e62ac88dc060198364ee9f34370;hp=d1e44b396921c48b5ec69049d4c5c6df31ecb15f;hb=949c5a8fcded63484f9351cc52957e5e61c964fb;hpb=584713f437ffa9390821a0580ed368aa22fb552e diff --git a/t/96multi_create.t b/t/96multi_create.t index d1e44b3..9ffd131 100644 --- a/t/96multi_create.t +++ b/t/96multi_create.t @@ -6,7 +6,7 @@ use Test::Exception; use lib qw(t/lib); use DBICTest; -plan tests => 95; +plan tests => 98; my $schema = DBICTest->init_schema(); @@ -738,4 +738,32 @@ eval { }; diag $@ if $@; + +## Test for the might_have is allowed empty bug (should check and see if this +## needs patching upstream to DBIC + +use DBIx::Class::ResultSet::RecursiveUpdate; + +my $might_have = { + artwork => undef, + liner_notes => undef, + tracks => [{title=>'hello', pos=>'100'}], + single_track_row => undef, +}; + +ok my $might_have_cd_rs = $schema->resultset('CD'), 'got a good resultset'; +ok my $might_have_cd_row = $might_have_cd_rs->first, 'got cd to test'; + +my $track = $schema->resultset ('Track')->next; +$might_have_cd_row->single_track_row( $track ); +$might_have_cd_row->update; + +DBIx::Class::ResultSet::RecursiveUpdate::Functions::recursive_update( + resultset => $might_have_cd_rs, + updates => $might_have, + object => $might_have_cd_row, +); + +is( $might_have_cd_row->single_track, undef, 'Might have deleted' ); + 1;