Koha/t/db_dependent/Items/GetAnalyticsCount.t
Fridolin Somers fd7652255c
Bug 27683: Unit test for GetAnalyticsCount
Run prove t/db_dependent/Items/GetAnalyticsCount.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-18 18:52:07 -03:00

42 lines
1.2 KiB
Perl
Executable file

use Modern::Perl;
use Test::More tests => 1;
use Test::MockModule;
use t::lib::Mocks;
use t::lib::TestBuilder;
use C4::Items;
use Koha::Database;
my $schema = Koha::Database->new->schema;
$schema->storage->txn_begin;
subtest 'GetAnalyticsCount' => sub {
plan tests => 2;
my $itemnumber = '123456789';
my $engine = C4::Context->preference("SearchEngine") // 'Zebra';
my $search = Test::MockModule->new("Koha::SearchEngine::${engine}::Search");
$search->mock(
'simple_search_compat',
sub {
my ( $self, $query ) = @_;
if ( $query and $query eq "hi=$itemnumber" ) {
return ( undef, undef, 7 );
}
return ( undef, undef, 0 );
}
);
t::lib::Mocks::mock_preference( 'EasyAnalyticalRecords', 0 );
my $c = C4::Items::GetAnalyticsCount($itemnumber);
is( $c, 0, 'GetAnalyticsCount returns 0 when pref is disabled' );
t::lib::Mocks::mock_preference( 'EasyAnalyticalRecords', 1 );
$c = C4::Items::GetAnalyticsCount($itemnumber);
is( $c, 7, 'GetAnalyticsCount uses simple_search_compat("hi=<itemnumber>") when pref is enabled' );
};
$schema->storage->txn_rollback;