Only load DBICTest::Schema when needed in tests
[dbsrgits/DBIx-Class.git] / t / resultset_class.t
1 use strict;
2 use warnings;
3 use Test::More;
4 use Class::Inspector ();
5
6 unshift(@INC, './t/lib');
7 use lib 't/lib';
8
9 use DBICTest;
10 use DBICTest::Schema;
11
12 is(DBICTest::Schema->source('Artist')->resultset_class, 'DBICTest::BaseResultSet', 'default resultset class');
13 ok(!Class::Inspector->loaded('DBICNSTest::ResultSet::A'), 'custom resultset class not loaded');
14
15 DBICTest::Schema->source('Artist')->resultset_class('DBICNSTest::ResultSet::A');
16
17 ok(!Class::Inspector->loaded('DBICNSTest::ResultSet::A'), 'custom resultset class not loaded on SET');
18 is(DBICTest::Schema->source('Artist')->resultset_class, 'DBICNSTest::ResultSet::A', 'custom resultset class set');
19 ok(Class::Inspector->loaded('DBICNSTest::ResultSet::A'), 'custom resultset class loaded on GET');
20
21 my $schema = DBICTest->init_schema;
22 my $resultset = $schema->resultset('Artist')->search;
23 isa_ok($resultset, 'DBICNSTest::ResultSet::A', 'resultset is custom class');
24
25 done_testing;