X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F96multi_create.t;h=e27c9cd9f4c0773872ceb040040bbd5395c23311;hb=4613ee1e805f722e186dff43738ab63603890b87;hp=0cbc9bfabaa24cbc7af76ce01b7590097fb730ed;hpb=38c03c208e9dd1b5800a652fa5a9056988add065;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/t/96multi_create.t b/t/96multi_create.t index 0cbc9bf..e27c9cd 100644 --- a/t/96multi_create.t +++ b/t/96multi_create.t @@ -51,16 +51,16 @@ my $newartist2 = $schema->resultset('Artist')->find_or_create({ name => 'Fred 3' is($newartist2->name, 'Fred 3', 'Created new artist with cds via find_or_create'); -my $artist2 = $schema->resultset('Artist')->create({ artistid => 1000, +my $artist2 = $schema->resultset('Artist')->create({ name => 'Fred 3', cds => [ - { artist => 1000, + { title => 'Music to code by', year => 2007, }, ], cds_unordered => [ - { artist => 1000, + { title => 'Music to code by', year => 2007, }, @@ -198,23 +198,22 @@ is($new_cd->artist->id, 17, 'new id retained okay'); # Test find or create related functionality my $new_artist = $schema->resultset("Artist")->create({ artistid => 18, name => 'larry' }); -my $new_cd_hashref2 = { + +eval { + $schema->resultset("CD")->create({ cdid => 28, - title => 'Boogie Wiggle', + title => 'Boogie Wiggle', year => '2007', artist => { artistid => 18, name => 'larry' } - }; - -eval { - $schema->resultset("CD")->create($new_cd_hashref2); + }); }; -is($@, '', 'new artist created without clash'); +is($@, '', 'new cd created without clash on related artist'); # Make sure exceptions from errors in created rels propogate eval { - my $t = $schema->resultset("Track")->new({}); - $t->cd($t->new_related('cd', { artist => undef } ) ); - $t->{_rel_in_storage} = 0; + my $t = $schema->resultset("Track")->new({ cd => { artist => undef } }); + #$t->cd($t->new_related('cd', { artist => undef } ) ); + #$t->{_rel_in_storage} = 0; $t->insert; }; like($@, qr/cd.artist may not be NULL/, "Exception propogated properly");