X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FDBICTest%2FSchema%2FCD.pm;h=2530c7c13dd96b31bae550792e125ed36a02a30d;hb=70c49125fbb6ace2022621dc429f2815407940d9;hp=35b8acd249df39683acd165ce7cb9e5f22f3cad4;hpb=87f0da6afff9adc776942e2cbd04d2b2cbaa1473;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/t/lib/DBICTest/Schema/CD.pm b/t/lib/DBICTest/Schema/CD.pm index 35b8acd..2530c7c 100644 --- a/t/lib/DBICTest/Schema/CD.pm +++ b/t/lib/DBICTest/Schema/CD.pm @@ -1,10 +1,48 @@ -package DBICTest::Schema::CD; +package # hide from PAUSE + DBICTest::Schema::CD; use base 'DBIx::Class::Core'; -DBICTest::Schema::CD->table('cd'); -DBICTest::Schema::CD->add_columns(qw/cdid artist title year/); -DBICTest::Schema::CD->set_primary_key('cdid'); -DBICTest::Schema::CD->add_unique_constraint(artist_title => [ qw/artist title/ ]); +__PACKAGE__->table('cd'); +__PACKAGE__->add_columns( + 'cdid' => { + data_type => 'integer', + is_auto_increment => 1, + }, + 'artist' => { + data_type => 'integer', + }, + 'title' => { + data_type => 'varchar', + size => 100, + }, + 'year' => { + data_type => 'varchar', + size => 100, + }, +); +__PACKAGE__->set_primary_key('cdid'); +__PACKAGE__->add_unique_constraint([ qw/artist title/ ]); + +__PACKAGE__->belongs_to( artist => 'DBICTest::Schema::Artist', undef, { is_deferrable => 1 } ); + +__PACKAGE__->has_many( tracks => 'DBICTest::Schema::Track' ); +__PACKAGE__->has_many( + tags => 'DBICTest::Schema::Tag', undef, + { order_by => 'tag' }, +); +__PACKAGE__->has_many( + cd_to_producer => 'DBICTest::Schema::CD_to_Producer' => 'cd' +); + +__PACKAGE__->might_have( + liner_notes => 'DBICTest::Schema::LinerNotes', undef, + { proxy => [ qw/notes/ ] }, +); +__PACKAGE__->many_to_many( producers => cd_to_producer => 'producer' ); +__PACKAGE__->many_to_many( + producers_sorted => cd_to_producer => 'producer', + { order_by => 'producer.name' }, +); 1;