CREATE TABLE t ( i int DEFAULT 3 NOT NULL, x varchar(255) ); #### __PACKAGE__->load_components( 'PK::Auto', 'Core' ); __PACKAGE__->table('t'); __PACKAGE__->add_columns( 'i', { data_type => 'integer', default_value => 3, is_nullable => 0, size => 4, }, 'x', { data_type => 'character varying', default_value => undef, is_nullable => 1, size => 255, }, ); #### my $rs = $schema->resultset( 'T' ); isa_ok( $rs, 'DBIx::Class::ResultSet' ); my $row = $rs->create( { x => 'foo' } ); isa_ok( $row, 'DBIx::Class::Row' ); ok( $row->in_storage(), 'new row is in storage' ); # THIS IS THE TEST THAT FAILS is( $row->i(), 3, 'new row has default value' );