test column name lowercasing in MSSQL
[dbsrgits/DBIx-Class-Schema-Loader.git] / t / 24loader_subclass.t
CommitLineData
3953cbee 1use strict;
2use warnings;
3use Test::More;
4use lib qw(t/lib);
5use make_dbictest_db;
6
29ddb54c 7my %loader_class = ( 'TestLoaderSubclass' => 'TestLoaderSubclass',
8 '::DBI::SQLite' => 'DBIx::Class::Schema::Loader::DBI::SQLite'
9 );
10
11my %invocations = (
12 loader_class => sub {
13 package DBICTest::Schema::1;
14 use base qw/ DBIx::Class::Schema::Loader /;
8b7749d6 15 __PACKAGE__->naming('current');
29ddb54c 16 __PACKAGE__->loader_class(shift);
17 __PACKAGE__->connect($make_dbictest_db::dsn);
18 },
19 connect_info => sub {
20 package DBICTeset::Schema::2;
21 use base qw/ DBIx::Class::Schema::Loader /;
8b7749d6 22 __PACKAGE__->naming('current');
29ddb54c 23 __PACKAGE__->connect($make_dbictest_db::dsn, { loader_class => shift });
24 },
25 make_schema_at => sub {
26 use DBIx::Class::Schema::Loader qw/ make_schema_at /;
27 make_schema_at(
28 'DBICTeset::Schema::3',
8b7749d6 29 { naming => 'current' },
29ddb54c 30 [ $make_dbictest_db::dsn, { loader_class => shift } ]
31 );
32 }
33);
3953cbee 34
29ddb54c 35# one test per invocation/class combo
36plan tests => keys(%invocations) * keys(%loader_class);
3953cbee 37
29ddb54c 38while (my ($style,$subref) = each %invocations) {
39 while (my ($arg, $class) = each %loader_class) {
40 my $schema = $subref->($arg);
41 $schema = $schema->clone unless ref $schema;
42 isa_ok($schema->_loader, $class, "$style($arg)");
43 }
44}