1use strict; 2use Test::More; 3 4BEGIN { 5 eval "use DBIx::Class::CDBICompat;"; 6 plan skip_all => "Class::Trigger and DBIx::ContextualFetch required: $@" 7 if $@; 8} 9 10BEGIN { 11 eval "use DBD::SQLite"; 12 plan $@ 13 ? (skip_all => 'needs DBD::SQLite for testing') 14 : (tests => 6); 15} 16 17use lib 't/cdbi/testlib'; 18require Film; 19 20sub Film::accessor_name_for { 21 my ($class, $col) = @_; 22 return "sheep" if lc $col eq "numexplodingsheep"; 23 return $col; 24} 25 26my $data = { 27 Title => 'Bad Taste', 28 Director => 'Peter Jackson', 29 Rating => 'R', 30}; 31 32my $bt; 33eval { 34 my $data = $data; 35 $data->{sheep} = 1; 36 ok $bt = Film->insert($data), "Modified accessor - with 37accessor"; 38 isa_ok $bt, "Film"; 39}; 40is $@, '', "No errors"; 41 42eval { 43 ok $bt->sheep(2), 'Modified accessor, set'; 44 ok $bt->update, 'Update'; 45}; 46is $@, '', "No errors"; 47 48