Bug 10986: (follow-up) add unit tests for getLanguages() and language filter
[koha.git] / t / db_dependent / Languages.t
1 #!/usr/bin/perl
2 #
3 # This Koha test module is a stub!  
4 # Add more tests here!!!
5
6 use strict;
7 use warnings;
8
9 use Test::More tests => 9;
10
11 BEGIN {
12     use_ok('C4::Languages');
13 }
14
15 my $dbh = C4::Context->dbh;
16 $dbh->{AutoCommit} = 0;
17 $dbh->{RaiseError} = 1;
18
19 isnt(C4::Languages::_get_themes(), undef, 'testing _get_themes doesnt return undef');
20
21 ok(C4::Languages::_get_language_dirs(), 'test getting _get_language_dirs');
22
23 is(C4::Languages::accept_language(),undef, 'test that accept_languages returns undef when nothing is entered');
24
25 ok(C4::Languages::getAllLanguages(), 'test get all languages');
26
27 C4::Context->set_preference('AdvancedSearchLanguages', '');
28 my $all_languages = C4::Languages::getAllLanguages('eng');
29 ok(@$all_languages > 10, 'retrieved a bunch of languges');
30
31 my $languages = C4::Languages::getLanguages('eng');
32 is_deeply($languages, $all_languages, 'getLanguages() and getAllLanguages() return the same list');
33
34 $languages = C4::Languages::getLanguages('eng', 1);
35 is_deeply($languages, $all_languages, 'getLanguages() and getAllLanguages() with filtering selected but AdvancedSearchLanguages blank return the same list');
36
37 C4::Context->set_preference('AdvancedSearchLanguages', 'ita|eng');
38 $languages = C4::Languages::getLanguages('eng', 1);
39 is(scalar(@$languages), 2, 'getLanguages() filtering using AdvancedSearchLanguages works');
40
41 $dbh->rollback;