Bug 34825: Remove Test::DBIx::Class from Letters.t
Includes a tidy.
Test plan:
Run t/Letters.t
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 22aee4db67
)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This commit is contained in:
parent
6c4eeb1c4a
commit
071c8ca79e
1 changed files with 42 additions and 36 deletions
78
t/Letters.t
78
t/Letters.t
|
@ -1,5 +1,7 @@
|
|||
#!/usr/bin/perl
|
||||
|
||||
# Copyright Koha development team 2007
|
||||
#
|
||||
# This file is part of Koha.
|
||||
#
|
||||
# Koha is free software; you can redistribute it and/or modify it
|
||||
|
@ -18,49 +20,53 @@
|
|||
use Modern::Perl;
|
||||
|
||||
use Test::MockModule;
|
||||
use Test::More;
|
||||
use Test::More tests => 3;
|
||||
|
||||
use Module::Load::Conditional qw/check_install/;
|
||||
|
||||
BEGIN {
|
||||
if ( check_install( module => 'Test::DBIx::Class' ) ) {
|
||||
plan tests => 6;
|
||||
} else {
|
||||
plan skip_all => "Need Test::DBIx::Class"
|
||||
}
|
||||
}
|
||||
|
||||
use Test::DBIx::Class;
|
||||
use t::lib::Mocks;
|
||||
use t::lib::TestBuilder;
|
||||
|
||||
fixtures_ok [
|
||||
Letter => [
|
||||
[ 'module', 'code', 'branchcode', 'name', 'is_html', 'title', 'content', 'lang' ],
|
||||
[ 'blah', 'ISBN', 'NBSI', 'book', 1, 'green', 'blahblah', 'french' ],
|
||||
[ 'bleh', 'ISSN', 'NSSI', 'page', 0, 'blue', 'blehbleh', 'american' ]
|
||||
],
|
||||
], 'add fixtures';
|
||||
|
||||
my $db = Test::MockModule->new('Koha::Database');
|
||||
$db->mock( _new_schema => sub { return Schema(); } );
|
||||
use Koha::Database;
|
||||
|
||||
use_ok('C4::Letters', qw( GetLetters ));
|
||||
|
||||
t::lib::Mocks::mock_preference('dateformat', 'metric');
|
||||
my $schema = Koha::Database->new->schema;
|
||||
$schema->storage->txn_begin;
|
||||
our $builder = t::lib::TestBuilder->new;
|
||||
|
||||
my $letters = C4::Letters::GetLetters();
|
||||
subtest 'GetLetters' => sub {
|
||||
plan tests => 2;
|
||||
t::lib::Mocks::mock_preference( 'dateformat', 'metric' );
|
||||
|
||||
my ( $ISBN_letter ) = grep {$_->{code} eq 'ISBN'} @$letters;
|
||||
is( $ISBN_letter->{name}, 'book', 'letter name for "ISBN" letter is book' );
|
||||
is( scalar( @$letters ), 2, 'GetLetters returns the 2 inserted letters' );
|
||||
my $data_1 = {
|
||||
module => 'blah', code => 'ISBN', branchcode => 'NBSI', name => 'book', is_html => 1, title => 'green',
|
||||
content => 'blahblah', lang => 'french'
|
||||
};
|
||||
my $data_2 = {
|
||||
module => 'blah', code => 'ISSN', branchcode => 'NSSI', name => 'page', is_html => 0, title => 'blue',
|
||||
content => 'bleble', lang => 'american'
|
||||
};
|
||||
$builder->build_object( { class => 'Koha::Notice::Templates', value => $data_1 } );
|
||||
$builder->build_object( { class => 'Koha::Notice::Templates', value => $data_2 } );
|
||||
|
||||
# Regression test for bug 10843
|
||||
# $dt->add takes a scalar, not undef
|
||||
my $letter;
|
||||
t::lib::Mocks::mock_preference('ReservesMaxPickUpDelay', undef);
|
||||
$letter = C4::Letters::_parseletter( undef, 'reserves', {waitingdate => "2013-01-01"} );
|
||||
is( ref($letter), 'HASH');
|
||||
t::lib::Mocks::mock_preference('ReservesMaxPickUpDelay', 1);
|
||||
$letter = C4::Letters::_parseletter( undef, 'reserves', {waitingdate => "2013-01-01"} );
|
||||
is( ref($letter), 'HASH');
|
||||
my $letters = GetLetters( { module => 'blah' } );
|
||||
is( scalar(@$letters), 2, 'GetLetters returns the 2 inserted letters' );
|
||||
|
||||
my ($ISBN_letter) = grep { $_->{code} eq 'ISBN' } @$letters;
|
||||
is( $ISBN_letter->{name}, 'book', 'letter name for "ISBN" letter is book' );
|
||||
};
|
||||
|
||||
subtest '_parseletter' => sub {
|
||||
plan tests => 2;
|
||||
|
||||
# Regression test for bug 10843
|
||||
# $dt->add takes a scalar, not undef
|
||||
my $letter;
|
||||
t::lib::Mocks::mock_preference( 'ReservesMaxPickUpDelay', undef );
|
||||
$letter = C4::Letters::_parseletter( undef, 'reserves', { waitingdate => "2013-01-01" } );
|
||||
is( ref($letter), 'HASH' );
|
||||
t::lib::Mocks::mock_preference( 'ReservesMaxPickUpDelay', 1 );
|
||||
$letter = C4::Letters::_parseletter( undef, 'reserves', { waitingdate => "2013-01-01" } );
|
||||
is( ref($letter), 'HASH' );
|
||||
};
|
||||
|
||||
$schema->storage->txn_begin;
|
||||
|
|
Loading…
Reference in a new issue