plan skip_all => $why;
}
+sub _monikerize {
+ my $name = shift;
+ return 'LoaderTest2X' if $name =~ /^loader_test2$/i;
+ return undef;
+}
+
sub run_tests {
my $self = shift;
- plan tests => 49;
+ plan tests => 54;
$self->create();
my $debug = ($self->{verbose} > 1) ? 1 : 0;
my %loader_opts = (
- dsn => $self->{dsn},
- user => $self->{user},
- password => $self->{password},
+ connect_info => [ $self->{dsn}, $self->{user},
+ $self->{password} ],
constraint => '^(?:\S+\.)?(?i:loader_test)[0-9]+$',
relationships => 1,
additional_classes => 'TestAdditional',
left_base_classes => [ qw/TestLeftBase/ ],
components => [ qw/TestComponent/ ],
resultset_components => [ qw/TestRSComponent/ ],
+ inflect_map => { loader_test4 => 'loader_test4zes' },
+ moniker_map => \&_monikerize,
debug => $debug,
);
isa_ok( $rsobj1, "DBIx::Class::ResultSet" );
isa_ok( $rsobj2, "DBIx::Class::ResultSet" );
+ is($moniker2, 'LoaderTest2X', "moniker_map testing");
+
{
my ($skip_tab, $skip_tabo, $skip_taba, $skip_cmeth,
$skip_rsmeth, $skip_tcomp, $skip_trscomp);
can_ok( $rsobj1, 'dbix_class_testrscomponent' ) or $skip_trscomp = 1;
can_ok( $class1, 'loader_test1_classmeth' ) or $skip_cmeth = 1;
- TODO: {
- local $TODO = "Not yet supported by ResultSetManger code";
+ TODO: {
+ local $TODO = "Not yet supported by ResultSetManger code";
can_ok( $rsobj1, 'loader_test1_rsmeth' ) or $skip_rsmeth = 1;
- }
+ }
SKIP: {
skip "Pre-requisite test failed", 1 if $skip_tab;
is( $obj->id, 1 );
is( $obj->dat, "foo" );
is( $rsobj2->count, 4 );
+ my $saved_id;
+ eval {
+ my $new_obj1 = $rsobj1->create({ dat => 'newthing' });
+ $saved_id = $new_obj1->id;
+ };
+ ok(!$@) or diag "Died during create new record using a PK::Auto key: $@";
+ ok($saved_id) or diag "Failed to get PK::Auto-generated id";
+
+ my $new_obj1 = $rsobj1->search({ dat => 'newthing' })->first;
+ ok($new_obj1) or diag "Cannot find newly inserted PK::Auto record";
+ is($new_obj1->id, $saved_id);
my ($obj2) = $rsobj2->find( dat => 'bbb' );
is( $obj2->id, 2 );
isa_ok( $obj4->fkid, $class3);
my $obj3 = $rsobj3->find(1);
- my $rs_rel4 = $obj3->search_related('loader_test4s');
+ my $rs_rel4 = $obj3->search_related('loader_test4zes');
isa_ok( $rs_rel4->first, $class4);
# fk def in comments should not be parsed