[Bast-commits] r5597 - DBIx-Class/0.08/trunk/t
ribasushi at dev.catalyst.perl.org
ribasushi at dev.catalyst.perl.org
Fri Feb 20 10:05:35 GMT 2009
Author: ribasushi
Date: 2009-02-20 10:05:35 +0000 (Fri, 20 Feb 2009)
New Revision: 5597
Modified:
DBIx-Class/0.08/trunk/t/60core.t
DBIx-Class/0.08/trunk/t/66relationship.t
Log:
Switching Track to Ordered uncovered a number of deficiences - we will keep it this way. Adjusting some tests
Modified: DBIx-Class/0.08/trunk/t/60core.t
===================================================================
--- DBIx-Class/0.08/trunk/t/60core.t 2009-02-20 09:31:07 UTC (rev 5596)
+++ DBIx-Class/0.08/trunk/t/60core.t 2009-02-20 10:05:35 UTC (rev 5597)
@@ -2,12 +2,13 @@
use warnings;
use Test::More;
+use Test::Exception;
use lib qw(t/lib);
use DBICTest;
my $schema = DBICTest->init_schema();
-plan tests => 88;
+plan tests => 90;
eval { require DateTime::Format::MySQL };
my $NO_DTFM = $@ ? 1 : 0;
@@ -71,7 +72,7 @@
cmp_ok($art[0]->artistid, '==', 3,'Correct artist too');
-$art->delete;
+lives_ok (sub { $art->delete }, 'Cascading delete on Ordered has_many works' ); # real test in ordered.t
@art = $schema->resultset("Artist")->search({ });
@@ -79,10 +80,8 @@
ok(!$art->in_storage, "It knows it's dead");
-eval { $art->delete; };
+dies_ok ( sub { $art->delete }, "Can't delete twice");
-ok($@, "Can't delete twice: $@");
-
is($art->name, 'We Are In Rehab', 'But the object is still live');
$art->insert;
@@ -183,7 +182,6 @@
$new = $schema->resultset("Track")->new( {
trackid => 100,
cd => 1,
- position => 4,
title => 'Insert or Update',
last_updated_on => '1973-07-19 12:01:02'
} );
@@ -191,9 +189,9 @@
ok($new->in_storage, 'update_or_insert insert ok');
# test in update mode
-$new->pos(5);
+$new->title('Insert or Update - updated');
$new->update_or_insert;
-is( $schema->resultset("Track")->find(100)->pos, 5, 'update_or_insert update ok');
+is( $schema->resultset("Track")->find(100)->title, 'Insert or Update - updated', 'update_or_insert update ok');
# get_inflated_columns w/relation and accessor alias
SKIP: {
@@ -204,8 +202,12 @@
is($tdata{'trackid'}, 100, 'got id');
isa_ok($tdata{'cd'}, 'DBICTest::CD', 'cd is CD object');
is($tdata{'cd'}->id, 1, 'cd object is id 1');
- is($tdata{'position'}, 5, 'got position from pos');
- is($tdata{'title'}, 'Insert or Update');
+ is(
+ $tdata{'position'},
+ $schema->resultset ('Track')->search ({cd => 1})->count,
+ 'Ordered assigned proper position',
+ );
+ is($tdata{'title'}, 'Insert or Update - updated');
is($tdata{'last_updated_on'}, '1973-07-19T12:01:02');
isa_ok($tdata{'last_updated_on'}, 'DateTime', 'inflated accessored column');
}
@@ -295,16 +297,12 @@
my $newbook = $schema->resultset( 'Bookmark' )->find(1);
-$@ = '';
-eval {
-my $newlink = $newbook->link;
-};
-ok(!$@, "stringify to false value doesn't cause error");
+lives_ok (sub { my $newlink = $newbook->link}, "stringify to false value doesn't cause error");
# test cascade_delete through many_to_many relations
{
my $art_del = $schema->resultset("Artist")->find({ artistid => 1 });
- $art_del->delete;
+ lives_ok (sub { $art_del->delete }, 'Cascading delete on Ordered has_many works' ); # real test in ordered.t
cmp_ok( $schema->resultset("CD")->search({artist => 1}), '==', 0, 'Cascading through has_many top level.');
cmp_ok( $schema->resultset("CD_to_Producer")->search({cd => 1}), '==', 0, 'Cascading through has_many children.');
}
@@ -375,7 +373,6 @@
# test resultsource->table return value when setting
{
my $class = $schema->class('Event');
- diag $class;
my $table = $class->table($class->table);
is($table, $class->table, '->table($table) returns $table');
}
Modified: DBIx-Class/0.08/trunk/t/66relationship.t
===================================================================
--- DBIx-Class/0.08/trunk/t/66relationship.t 2009-02-20 09:31:07 UTC (rev 5596)
+++ DBIx-Class/0.08/trunk/t/66relationship.t 2009-02-20 10:05:35 UTC (rev 5597)
@@ -92,12 +92,11 @@
$track = $schema->resultset("Track")->create( {
trackid => 2,
cd => 3,
- position => 99,
title => 'Hidden Track 2'
} );
$track->update_from_related( cd => $cd );
-my $t_cd = ($schema->resultset("Track")->search( cd => 4, position => 99 ))[0]->cd;
+my $t_cd = ($schema->resultset("Track")->search( cd => 4, title => 'Hidden Track 2' ))[0]->cd;
is( $t_cd->cdid, 4, 'update_from_related ok' );
More information about the Bast-commits
mailing list