X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F39load_namespaces_1.t;h=f7fb08ee2ca39f9190e720e32d8a2fd7e852c904;hb=bb768302f9abecbd4a32090ba38d5938a009bd7b;hp=bd7037014dc8e92b852d41f942114e30b118eb1d;hpb=3995895f9e96892ed0f359050b437ccd083724ad;p=dbsrgits%2FDBIx-Class.git diff --git a/t/39load_namespaces_1.t b/t/39load_namespaces_1.t index bd70370..f7fb08e 100644 --- a/t/39load_namespaces_1.t +++ b/t/39load_namespaces_1.t @@ -1,34 +1,37 @@ -#!/usr/bin/perl +BEGIN { do "./t/lib/ANFANG.pm" or die ( $@ || $! ) } use strict; use warnings; use Test::More; -unshift(@INC, './t/lib'); -plan tests => 9; +use DBICTest; # do not remove even though it is not used my $warnings; eval { local $SIG{__WARN__} = sub { $warnings .= shift }; package DBICNSTest; - use base qw/DBIx::Class::Schema/; + use base qw/DBICTest::BaseSchema/; __PACKAGE__->load_namespaces; }; -ok(!$@) or diag $@; -like($warnings, qr/load_namespaces found ResultSet class C with no corresponding source-definition class/); -like($warnings, qr/load_namespaces found Result class C with no corresponding source-definition class/); +ok(!$@, 'load_namespaces doesnt die') or diag $@; +like($warnings, qr/load_namespaces found ResultSet class 'DBICNSTest::ResultSet::C' with no corresponding Result class/, 'Found warning about extra ResultSet classes'); + +like($warnings, qr/load_namespaces found ResultSet class 'DBICNSTest::ResultSet::D' that does not subclass DBIx::Class::ResultSet/, 'Found warning about ResultSets with incorrect subclass'); my $source_a = DBICNSTest->source('A'); isa_ok($source_a, 'DBIx::Class::ResultSource::Table'); my $rset_a = DBICNSTest->resultset('A'); isa_ok($rset_a, 'DBICNSTest::ResultSet::A'); -my $resclass_a = DBICNSTest->resultset('A')->result_class; -is($resclass_a, 'DBICNSTest::Result::A'); my $source_b = DBICNSTest->source('B'); isa_ok($source_b, 'DBIx::Class::ResultSource::Table'); my $rset_b = DBICNSTest->resultset('B'); isa_ok($rset_b, 'DBIx::Class::ResultSet'); -my $resclass_b = DBICNSTest->resultset('B')->result_class; -is($resclass_b, 'DBICNSTest::Source::B'); + +for my $moniker (qw/A B/) { + my $class = "DBICNSTest::Result::$moniker"; + ok(!defined($class->result_source_instance->source_name), "Source name of $moniker not defined"); +} + +done_testing;