7 use lib 't/cdbi/testlib';
13 Director->has_many(nasties => 'Film');
15 my $dir = Director->insert({
16 name => "Lewis Teague",
18 my $kk = $dir->add_to_nasties({
21 is $kk->director, $dir, "Director set OK";
22 is $dir->nasties, 1, "We have one nasty";
25 ok !Film->retrieve("Alligator"), "has_many cascade deletes by default";
29 # Two ways of saying not to cascade
30 for my $args ({ no_cascade_delete => 1 }, { cascade => "None" }) {
31 Director->has_many(nasties => 'Film', $args);
33 my $dir = Director->insert({
34 name => "Lewis Teague",
36 my $kk = $dir->add_to_nasties({
39 is $kk->director, $dir, "Director set OK";
40 is $dir->nasties, 1, "We have one nasty";
43 local $Data::Dumper::Terse = 1;
44 ok +Film->retrieve("Alligator"), 'has_many with ' . Dumper ($args);;
50 # local $TODO = 'cascade => "Fail" unimplemented';
52 # Director->has_many(nasties => Film => { cascade => 'Fail' });
54 # my $dir = Director->insert({ name => "Nasty Noddy" });
55 # my $kk = $dir->add_to_nasties({ Title => 'Killer Killers' });
56 # is $kk->director, $dir, "Director set OK";
57 # is $dir->nasties, 1, "We have one nasty";
59 # ok !eval { $dir->delete };
60 # like $@, qr/1/, "Can't delete while films exist";
62 # my $rr = $dir->add_to_nasties({ Title => 'Revenge of the Revengers' });
63 # ok !eval { $dir->delete };
64 # like $@, qr/2/, "Still can't delete";
66 # $dir->nasties->delete_all;
67 # ok eval { $dir->delete };
68 # is $@, '', "Can delete once films are gone";