Bug 18613: Add unit tests for getletter

Signed-off-by: Mason James <mtj@kohaaloha.com>
This commit is contained in:
Baptiste Wojtkowski 2017-07-11 09:12:37 +00:00 committed by Mason James
parent 1e29f5963d
commit 9d6ab7a0ff
1 changed files with 34 additions and 9 deletions

View File

@ -179,15 +179,38 @@ is( $letters->[0]->{name}, 'my name', 'GetLetters gets the name correctly' );
# getletter
my $letter = C4::Letters::getletter('my module', 'my code', $library->{branchcode}, 'email');
is( $letter->{branchcode}, $library->{branchcode}, 'GetLetters gets the branch code correctly' );
is( $letter->{module}, 'my module', 'GetLetters gets the module correctly' );
is( $letter->{code}, 'my code', 'GetLetters gets the code correctly' );
is( $letter->{name}, 'my name', 'GetLetters gets the name correctly' );
is( $letter->{is_html}, 1, 'GetLetters gets the boolean is_html correctly' );
is( $letter->{title}, $title, 'GetLetters gets the title correctly' );
is( $letter->{content}, $content, 'GetLetters gets the content correctly' );
is( $letter->{message_transport_type}, 'email', 'GetLetters gets the message type correctly' );
subtest 'getletter' => sub {
plan tests => 16;
my $letter = C4::Letters::getletter('my module', 'my code', $library->{branchcode}, 'email');
is( $letter->{branchcode}, $library->{branchcode}, 'GetLetters gets the branch code correctly' );
is( $letter->{module}, 'my module', 'GetLetters gets the module correctly' );
is( $letter->{code}, 'my code', 'GetLetters gets the code correctly' );
is( $letter->{name}, 'my name', 'GetLetters gets the name correctly' );
is( $letter->{is_html}, 1, 'GetLetters gets the boolean is_html correctly' );
is( $letter->{title}, $title, 'GetLetters gets the title correctly' );
is( $letter->{content}, $content, 'GetLetters gets the content correctly' );
is( $letter->{message_transport_type}, 'email', 'GetLetters gets the message type correctly' );
my $context = Test::MockModule->new('C4::Context');
$context->mock( 'userenv', sub {
return { branch => "anotherlib" }
});
t::lib::Mocks::mock_preference('IndependentBranches', 1);
$letter = C4::Letters::getletter('my module', 'my code', $library->{branchcode}, 'email');
is( $letter->{branchcode}, $library->{branchcode}, 'GetLetters gets the branch code correctly' );
is( $letter->{module}, 'my module', 'GetLetters gets the module correctly' );
is( $letter->{code}, 'my code', 'GetLetters gets the code correctly' );
is( $letter->{name}, 'my name', 'GetLetters gets the name correctly' );
is( $letter->{is_html}, 1, 'GetLetters gets the boolean is_html correctly' );
is( $letter->{title}, $title, 'GetLetters gets the title correctly' );
is( $letter->{content}, $content, 'GetLetters gets the content correctly' );
is( $letter->{message_transport_type}, 'email', 'GetLetters gets the message type correctly' );
$context->unmock('userenv');
};
# Regression test for Bug 14206
$dbh->do( q|INSERT INTO letter(branchcode,module,code,name,is_html,title,content,message_transport_type) VALUES ('FFL','my module','my code','my name',1,?,?,'print')|, undef, $title, $content );
@ -196,6 +219,8 @@ is( $letter14206_a->{message_transport_type}, 'print', 'Bug 14206 - message_tran
my $letter14206_b = C4::Letters::getletter('my module', 'my code', 'FFL', 'print');
is( $letter14206_b->{message_transport_type}, 'print', 'Bug 14206 - message_transport_type passed, correct mtt detected' );
# test for overdue_notices.pl
my $overdue_rules = {
letter1 => 'my code',