X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FDBICTest%2FSchema%2FYear2000CDs.pm;h=1cf1b3736ea86b6cb24c7d2e5fd9b47d448760ef;hb=4c90556806f286093d0806e858abdba329e6dfd3;hp=888ccb8184288b44a72b66e354d96e59d91a315f;hpb=59d89269e5389d8f04f1f8490ac86297296b5281;p=dbsrgits%2FDBIx-Class.git diff --git a/t/lib/DBICTest/Schema/Year2000CDs.pm b/t/lib/DBICTest/Schema/Year2000CDs.pm index 888ccb8..1cf1b37 100644 --- a/t/lib/DBICTest/Schema/Year2000CDs.pm +++ b/t/lib/DBICTest/Schema/Year2000CDs.pm @@ -1,33 +1,26 @@ -package # hide from PAUSE +package # hide from PAUSE DBICTest::Schema::Year2000CDs; -## Used in 104view.t -use base qw/DBICTest::BaseResult/; +use warnings; +use strict; -__PACKAGE__->table_class('DBIx::Class::ResultSource::View'); +use base qw/DBICTest::Schema::CD/; + +# FIXME not entirely sure *why* this particular bit trips up tests +# and even more mysteriously: only a single oracle test... +# Running out of time and no local Oracle so can't investigate :/ +use mro 'c3'; +__PACKAGE__->table_class('DBIx::Class::ResultSource::View'); __PACKAGE__->table('year2000cds'); -__PACKAGE__->result_source_instance->view_definition( - "SELECT cdid, artist, title FROM cd WHERE year ='2000'" -); -__PACKAGE__->add_columns( - 'cdid' => { - data_type => 'integer', - is_auto_increment => 1, - }, - 'artist' => { - data_type => 'integer', - }, - 'title' => { - data_type => 'varchar', - size => 100, - }, -); -__PACKAGE__->set_primary_key('cdid'); -__PACKAGE__->add_unique_constraint([ qw/artist title/ ]); +# need to operate on the instance for things to work +__PACKAGE__->result_source_instance->view_definition( sprintf ( + "SELECT %s FROM cd WHERE year = '2000'", + join (', ', __PACKAGE__->columns), +)); __PACKAGE__->belongs_to( artist => 'DBICTest::Schema::Artist' ); -__PACKAGE__->has_many( tracks => 'DBICTest::Schema::Track' ); +__PACKAGE__->has_many( tracks => 'DBICTest::Schema::Track', 'cd' ); 1;