Bug 16890: Make TestBuilder generate date for date columns (and not datetime)
TestBuilder should not generate datetime for date columns, but only for datetime and timestamp columns. Test plan: Make sure the change in t/db_dependent/TestBuilder.t are consistent. Before this patch, 1 of the 2 tests should fail. After this patch applied, they both should pass. Signed-off-by: Srdjan <srdjan@catalyst.net.nz> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
parent
58138e93d7
commit
06fa67d75a
|
|
@ -19,7 +19,7 @@
|
|||
|
||||
use Modern::Perl;
|
||||
|
||||
use Test::More tests => 9;
|
||||
use Test::More tests => 10;
|
||||
use Test::Warn;
|
||||
use Data::Dumper qw(Dumper);
|
||||
|
||||
|
|
@ -321,6 +321,17 @@ subtest 'Auto-increment values tests' => sub {
|
|||
'Build should not overwrite an auto_incr column';
|
||||
};
|
||||
|
||||
subtest 'Date handling' => sub {
|
||||
plan tests => 2;
|
||||
|
||||
$builder = t::lib::TestBuilder->new;
|
||||
|
||||
my $patron = $builder->build( { source => 'Borrower' } );
|
||||
is( length( $patron->{updated_on} ), 19, 'A timestamp column value should be YYYY-MM-DD HH:MM:SS' );
|
||||
is( length( $patron->{dateofbirth} ), 10, 'A date column value should be YYYY-MM-DD' );
|
||||
|
||||
};
|
||||
|
||||
$schema->storage->txn_rollback;
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -325,8 +325,8 @@ sub _gen_type {
|
|||
decimal => \&_gen_real,
|
||||
double_precision => \&_gen_real,
|
||||
|
||||
timestamp => \&_gen_date,
|
||||
datetime => \&_gen_date,
|
||||
timestamp => \&_gen_datetime,
|
||||
datetime => \&_gen_datetime,
|
||||
date => \&_gen_date,
|
||||
|
||||
char => \&_gen_text,
|
||||
|
|
@ -379,6 +379,11 @@ sub _gen_real {
|
|||
}
|
||||
|
||||
sub _gen_date {
|
||||
my ($self, $params) = @_;
|
||||
return $self->schema->storage->datetime_parser->format_date(DateTime->now())
|
||||
}
|
||||
|
||||
sub _gen_datetime {
|
||||
my ($self, $params) = @_;
|
||||
return $self->schema->storage->datetime_parser->format_datetime(DateTime->now());
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue