X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fp5-DBIx-Class-ResultSet-RecursiveUpdate;a=blobdiff_plain;f=t%2Flib%2FDBICTest%2FSchema%2FTrack.pm;fp=t%2Flib%2FDBICTest%2FSchema%2FTrack.pm;h=b7b48131ca9952ac1b99dcd88e14f794796e7e34;hp=0000000000000000000000000000000000000000;hb=584713f437ffa9390821a0580ed368aa22fb552e;hpb=d93b1239cb7de482ac79a091d7daa67115596306 diff --git a/t/lib/DBICTest/Schema/Track.pm b/t/lib/DBICTest/Schema/Track.pm new file mode 100644 index 0000000..b7b4813 --- /dev/null +++ b/t/lib/DBICTest/Schema/Track.pm @@ -0,0 +1,48 @@ +package # hide from PAUSE + DBICTest::Schema::Track; + +use base 'DBIx::Class::Core'; +__PACKAGE__->load_components(qw/InflateColumn::DateTime/); + +__PACKAGE__->table('track'); +__PACKAGE__->add_columns( + 'trackid' => { + data_type => 'integer', + is_auto_increment => 1, + }, + 'cd' => { + data_type => 'integer', + }, + 'position' => { + data_type => 'integer', + accessor => 'pos', + }, + 'title' => { + data_type => 'varchar', + size => 100, + }, + last_updated_on => { + data_type => 'datetime', + accessor => 'updated_date', + is_nullable => 1 + }, +); +__PACKAGE__->set_primary_key('trackid'); + +__PACKAGE__->add_unique_constraint([ qw/cd position/ ]); +__PACKAGE__->add_unique_constraint([ qw/cd title/ ]); + +__PACKAGE__->belongs_to( cd => 'DBICTest::Schema::CD' ); +__PACKAGE__->belongs_to( disc => 'DBICTest::Schema::CD' => 'cd'); + +__PACKAGE__->might_have( cd_single => 'DBICTest::Schema::CD', 'single_track' ); +__PACKAGE__->might_have( lyrics => 'DBICTest::Schema::Lyrics', 'track_id' ); + +__PACKAGE__->resultset_class( __PACKAGE__ . '::ResultSet'); + +package DBICTest::Schema::Track::ResultSet; + +use base qw( DBIx::Class::ResultSet::RecursiveUpdate ); + + +1;