- Cleaning up the language in some of the Cookbook documentation
[dbsrgits/DBIx-Class.git] / t / cdbi / construct.t
1 use strict;
2 use Test::More;
3
4 BEGIN {
5   eval "use DBIx::Class::CDBICompat;";
6   plan $@ ? (skip_all => "Class::Trigger and DBIx::ContextualFetch required: $@")
7           : (tests=> 5);
8 }
9
10 INIT {
11     use lib 't/cdbi/testlib';
12     use Film;
13 }
14
15 {
16     Film->insert({
17         Title     => "Breaking the Waves",
18         Director  => 'Lars von Trier',
19         Rating    => 'R'
20     });
21
22     my $film = Film->construct({
23         Title     => "Breaking the Waves",
24         Director  => 'Lars von Trier',
25     });
26
27     isa_ok $film, "Film";
28     is $film->title,    "Breaking the Waves";
29     is $film->director, "Lars von Trier";
30     is $film->rating,   "R",
31         "constructed objects can get missing data from the db";
32 }
33
34 {
35     package Foo;
36     use base qw(Film);
37     Foo->columns( TEMP => qw(temp_thing) );
38     my $film = Foo->construct({
39         temp_thing  => 23
40     });
41     
42     ::is $film->temp_thing, 23, "construct sets temp columns";
43 }