change _create_ID to be saner for new version
David Kamholz [Tue, 31 Jan 2006 22:47:10 +0000 (22:47 +0000)]
lib/DBIx/Class/PK.pm
t/run/01core.tl
t/run/05multipk.tl

index c86aed3..4c8f106 100644 (file)
@@ -81,10 +81,9 @@ sub ID {
 }
 
 sub _create_ID {
-  my ($class,%vals) = @_;
+  my ($self,%vals) = @_;
   return undef unless 0 == grep { !defined } values %vals;
-  $class = ref $class || $class;
-  return join '|', $class, map { $_ . '=' . $vals{$_} } sort keys %vals;    
+  return join '|', ref $self || $self, $self->result_source->name, map { $_ . '=' . $vals{$_} } sort keys %vals;    
 }
 
 sub ident_condition {
index 7e451ae..41a3941 100644 (file)
@@ -71,7 +71,7 @@ $new_again = $schema->resultset("Artist")->find(4);
 
 is($new_again->name, 'Man With A Spoon', 'Retrieved correctly');
 
-is($new_again->ID, 'DBICTest::Artist|artistid=4', 'unique object id generated correctly');
+is($new_again->ID, 'DBICTest::Artist|artist|artistid=4', 'unique object id generated correctly');
 
 is($schema->resultset("Artist")->count, 4, 'count ok');
 
index 776a382..e60f006 100644 (file)
@@ -6,7 +6,7 @@ $artist = DBICTest::Artist->find(1);
 ok($artist->find_related('twokeys', {cd => 1}), "find multiple pks using relationships + args");
 ok($schema->resultset("FourKeys")->find(1,2,3,4), "find multiple pks without hash");
 ok($schema->resultset("FourKeys")->find(5,4,3,6), "find multiple pks without hash");
-is($schema->resultset("FourKeys")->find(1,2,3,4)->ID, 'DBICTest::FourKeys|bar=2|foo=1|goodbye=4|hello=3', 'unique object id ok for multiple pks');
+is($schema->resultset("FourKeys")->find(1,2,3,4)->ID, 'DBICTest::FourKeys|fourkeys|bar=2|foo=1|goodbye=4|hello=3', 'unique object id ok for multiple pks');
 
 }