X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F09schema_options.t;h=3a9d98b3cacec2f80d13ab2dfdd57439152f382d;hb=4c7770ddf435bacaa6eae1a8debe3dacfefeddce;hp=2f95fc78377339b0a7ec4d9f65e84fa63423e1e6;hpb=d816d7bf6502a6c67912f1736705c6b55a43a518;p=catagits%2FCatalyst-Model-DBIC-Schema.git diff --git a/t/09schema_options.t b/t/09schema_options.t index 2f95fc7..3a9d98b 100644 --- a/t/09schema_options.t +++ b/t/09schema_options.t @@ -8,8 +8,10 @@ use Test::More; use Test::Exception; use Catalyst::Model::DBIC::Schema; use ASchemaClass; +use AnotherSchemaClass; -plan tests => 4; +# reusing the same app for 2 models, gets a redefined warning +$SIG{__WARN__} = sub { warn $_[0] unless $_[0] =~ /redefined/ }; ok((my $m = instance(a_schema_option => 'mtfnpy')), 'instance'); @@ -19,12 +21,33 @@ lives_ok { $m->a_schema_option('pass the crack pipe') } 'delegate called'; is $m->schema->a_schema_option, 'pass the crack pipe', 'delegation works'; +ok(($m = instance(schema_class => 'AnotherSchemaClass')), 'instance'); + +is $m->resultset('User')->rs_config_option, 'configured rs value', + 'ResultSet option passed from config'; + +done_testing; + sub instance { - Catalyst::Model::DBIC::Schema->COMPONENT('MyApp', { + MyApp::Model::DB->COMPONENT('MyApp', { + traits => 'SchemaProxy', schema_class => 'ASchemaClass', connect_info => ['dbi:SQLite:foo.db', '', ''], @_, }) } -{ package MyApp; use Catalyst; } +BEGIN { + package MyApp; + use Catalyst; + __PACKAGE__->config({ + 'Model::DB::User' => { + rs_config_option => 'configured rs value', + }, + }); +} + +{ + package MyApp::Model::DB; + use base 'Catalyst::Model::DBIC::Schema'; +}