From: Michael G Schwern Date: Thu, 13 Mar 2008 18:49:57 +0000 (+0000) Subject: Test the behavior of construct() with temp columns. X-Git-Tag: v0.08240~531 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=146c1838a44b495f230443d3dc15874cf32644c0;hp=e4d970edd7f7fe71787d2b7ca754980fd92727cb;p=dbsrgits%2FDBIx-Class.git Test the behavior of construct() with temp columns. --- diff --git a/t/cdbi-t/construct.t b/t/cdbi-t/construct.t index 59adef1..e824b06 100644 --- a/t/cdbi-t/construct.t +++ b/t/cdbi-t/construct.t @@ -6,7 +6,7 @@ use Test::More; BEGIN { eval "use DBIx::Class::CDBICompat;"; plan $@ ? (skip_all => "Class::Trigger and DBIx::ContextualFetch required: $@") - : (tests=> 4); + : (tests=> 5); } INIT { @@ -14,18 +14,32 @@ INIT { use Film; } -Film->insert({ - Title => "Breaking the Waves", - Director => 'Lars von Trier', - Rating => 'R' -}); +{ + Film->insert({ + Title => "Breaking the Waves", + Director => 'Lars von Trier', + Rating => 'R' + }); -my $film = Film->construct({ - Title => "Breaking the Waves", - Director => 'Lars von Trier', -}); + my $film = Film->construct({ + Title => "Breaking the Waves", + Director => 'Lars von Trier', + }); -isa_ok $film, "Film"; -is $film->title, "Breaking the Waves"; -is $film->director, "Lars von Trier"; -is $film->rating, "R", "constructed objects can get missing data from the db"; \ No newline at end of file + isa_ok $film, "Film"; + is $film->title, "Breaking the Waves"; + is $film->director, "Lars von Trier"; + is $film->rating, "R", + "constructed objects can get missing data from the db"; +} + +{ + package Foo; + use base qw(Film); + Foo->columns( TEMP => qw(temp_thing) ); + my $film = Foo->construct({ + temp_thing => 23 + }); + + ::is $film->temp_thing, 23, "construct sets temp columns"; +}