Using the relations accessor autovivifies
$object->{_inflated_column}{the_relation} and makes set_from_related
ineffective in the future.

Here is the test:

my $track = $schema->resultset("Track")->new( {} );
$track->cd;
$track->set_from_related( cd => $cd );
ok ($track->cd, 'set_from_related ok after using the accessor' );

As I understand this should pass, and it passes if you remove the
second line there.

The patch for t/66relationship.t is attached.

-- 
Zbigniew Lukasiak
http://brudnopis.blogspot.com/
Index: t/66relationship.t
===================================================================
--- t/66relationship.t	(revision 4281)
+++ t/66relationship.t	(working copy)
@@ -7,7 +7,7 @@
 
 my $schema = DBICTest->init_schema();
 
-plan tests => 62;
+plan tests => 63;
 
 # has_a test
 my $cd = $schema->resultset("CD")->find(4);
@@ -66,6 +66,13 @@
 
 ok( !defined($track->cd), 'set_from_related with undef ok');
 
+TODO: {
+    local $TODO = 'accessing $object->rel and set_from_related';
+    my $track = $schema->resultset("Track")->new( {} );
+    $track->cd;
+    $track->set_from_related( cd => $cd ); 
+    ok ($track->cd, 'set_from_related ok after using the accessor' );
+};
 
 # update_from_related, the same as set_from_related, but it calls update afterwards
 $track = $schema->resultset("Track")->create( {
_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[EMAIL PROTECTED]

Reply via email to