X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F08helper.t;h=290553ae38689bc571a1a00f5809d2e7bc2c2e8c;hb=5a3b72f5cd8196b8b546a9365ce49d98c0dd7f21;hp=066a69dcea450a323ff8aab3cd5953dfbb59e0d1;hpb=a4803ca6e4b559c289671a01ea9a978eebea06f1;p=catagits%2FCatalyst-Model-DBIC-Schema.git diff --git a/t/08helper.t b/t/08helper.t index 066a69d..290553a 100644 --- a/t/08helper.t +++ b/t/08helper.t @@ -10,7 +10,6 @@ use Catalyst::Helper::Model::DBIC::Schema; use Storable 'dclone'; eval "use Catalyst::Helper"; plan skip_all => 'Catalyst::Helper required for tests' if $@; -plan tests => 41; my $helper = Catalyst::Helper->new; $helper->{base} = $Bin; @@ -74,11 +73,12 @@ $i = instance(args => [$static, q{components=TimeStamp,Foo}]); is_deeply $i->components, ['InflateColumn::DateTime', 'TimeStamp', 'Foo'], 'two extra components'; +my $flags = qr// =~ /\^/ ? '^' : "-xism"; $i = instance(args => [$static, q{constraint=^(foo|bar)$}]); is $i->loader_args->{constraint}, qr/^(foo|bar)$/, 'constraint loader arg'; is $i->helper->{loader_args}{constraint}, - q{qr/(?-xism:^(foo|bar)$)/}, + qq{qr/(?$flags:^(foo|bar)\$)/}, 'constraint loader arg as string'; $i = instance(args => [$static, q{exclude=^(foo|bar)$}]); @@ -118,6 +118,16 @@ is $i->helper->{connect_info}{name_sep}, 'q{.}', 'connect_info name_sep as string'; $i = instance(args => [ + $static, $sqlite, 'on_connect_do=PRAGMA foreign_keys = ON' +]); + +is $i->connect_info->{on_connect_do}, + 'PRAGMA foreign_keys = ON', 'on_connect_do string'; + +is $i->helper->{connect_info}{on_connect_do}, + 'q{PRAGMA foreign_keys = ON}', 'on_connect_do string as string'; + +$i = instance(args => [ $static, 'components=TimeStamp', $sqlite, '', $on_connect_do, $quote_char, $name_sep ]); @@ -156,6 +166,17 @@ is $i->helper->{connect_info}{auto_savepoint}, 'q{1}', is $i->helper->{connect_info}{AutoCommit}, 'q{0}', 'connect_info arg from extra hash as string'; +$i = instance(args => [ + $static, 'components=TimeStamp', $sqlite, $on_connect_do, + $quote_char, $name_sep, 'auto_savepoint=1', 'AutoCommit=0', + 'db_schema=myschema', +]); + +is $i->loader_args->{db_schema}, 'myschema', + 'loader arg after connect_info'; + +done_testing; + sub instance { Catalyst::Helper::Model::DBIC::Schema->new( schema_class => 'AnotherSchemaClass',