1 BEGIN { do "./t/lib/ANFANG.pm" or die ( $@ || $! ) }
9 use DBICTest; # do not remove even though it is not used (pulls in MRO::Compat if needed)
14 use base "DBIx::Class::Core";
22 #Injecting a direct parent.
23 __PACKAGE__->inject_base( __PACKAGE__, 'AAA' );
31 #Injecting an indirect parent.
32 __PACKAGE__->inject_base( __PACKAGE__, 'DBIx::Class::Core' );
35 eval { mro::get_linear_isa('BBB'); };
36 ok (! $@, "Correctly skipped injecting a direct parent of class BBB");
38 eval { mro::get_linear_isa('CCC'); };
39 ok (! $@, "Correctly skipped injecting an indirect parent of class BBB");
41 use DBIx::Class::Storage::DBI::Sybase::Microsoft_SQL_Server;
44 mro::get_linear_isa('DBIx::Class::Storage::DBI::Sybase::Microsoft_SQL_Server'),
46 DBIx::Class::Storage::DBI::Sybase::Microsoft_SQL_Server
47 DBIx::Class::Storage::DBI::Sybase
48 DBIx::Class::Storage::DBI::MSSQL
49 DBIx::Class::Storage::DBI::UniqueIdentifier
50 DBIx::Class::Storage::DBI::IdentityInsert
51 DBIx::Class::Storage::DBI
52 DBIx::Class::Storage::DBIHacks
55 DBIx::Class::Componentised
56 Class::C3::Componentised
57 DBIx::Class::AccessorGroup
58 Class::Accessor::Grouped
60 'Correctly ordered ISA of DBIx::Class::Storage::DBI::Sybase::Microsoft_SQL_Server'
63 my $storage = DBIx::Class::Storage::DBI::Sybase::Microsoft_SQL_Server->new;
64 $storage->connect_info(['dbi:SQLite::memory:']); # determine_driver's init() connects for this subclass
65 $storage->_determine_driver;
67 $storage->can('sql_limit_dialect'),
68 'DBIx::Class::Storage::DBI::MSSQL'->can('sql_limit_dialect'),
69 'Correct method picked'
72 if ( "$]" >= 5.010 ) {
73 ok (! $INC{'Class/C3.pm'}, 'No Class::C3 loaded on perl 5.10+');
75 # Class::C3::Componentised loads MRO::Compat unconditionally to satisfy
76 # the assumption that once Class::C3::X is loaded, so is Class::C3
77 #ok (! $INC{'MRO/Compat.pm'}, 'No MRO::Compat loaded on perl 5.10+');