00faa967bd
Previous commit was lacking test coverage of new function. TEST PLAN --------- 1) Apply all the patches 2) prove -v t/db_dependent/Log.t -- should be success. 3) koha qa test tools Signed-off-by: Marc Véron <veron@veron.ch> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
80 lines
2 KiB
Perl
80 lines
2 KiB
Perl
#!/usr/bin/perl
|
|
#
|
|
# Copyright 2011 MJ Ray and software.coop
|
|
# This Koha test module is a stub!
|
|
# Add more tests here!!!
|
|
|
|
use strict;
|
|
use warnings;
|
|
use Test::More tests => 7;
|
|
|
|
# We need C4::Dates to handle the dates
|
|
use C4::Dates;
|
|
use C4::Context;
|
|
use t::lib::Mocks qw/mock_preference/; # to mock CronjobLog
|
|
use Data::Dumper;
|
|
|
|
$| = 1;
|
|
|
|
BEGIN {
|
|
use_ok('C4::Log');
|
|
}
|
|
my $success;
|
|
|
|
eval {
|
|
# FIXME: are we sure there is an member number 1?
|
|
# FIXME: can we remove this log entry somehow?
|
|
logaction("MEMBERS","MODIFY",1,"test operation");
|
|
$success = 1;
|
|
} or do {
|
|
diag($@);
|
|
$success = 0;
|
|
};
|
|
ok($success, "logaction seemed to work");
|
|
|
|
eval {
|
|
# FIXME: US formatted date hardcoded into test for now
|
|
$success = scalar(@{GetLogs("","","",undef,undef,"","")});
|
|
} or do {
|
|
diag($@);
|
|
$success = 0;
|
|
};
|
|
ok($success, "GetLogs returns results for an open search");
|
|
|
|
eval {
|
|
# FIXME: US formatted date hardcoded into test for now
|
|
my $date = C4::Dates->new();
|
|
$success = scalar(@{GetLogs($date->today(),$date->today(),"",undef,undef,"","")});
|
|
} or do {
|
|
diag($@);
|
|
$success = 0;
|
|
};
|
|
ok($success, "GetLogs accepts dates in an All-matching search");
|
|
|
|
eval {
|
|
$success = scalar(@{GetLogs("","","",["MEMBERS"],["MODIFY"],1,"")});
|
|
} or do {
|
|
diag($@);
|
|
$success = 0;
|
|
};
|
|
ok($success, "GetLogs seemed to find ".$success." like our test record in a tighter search");
|
|
|
|
# Make sure we can rollback.
|
|
my $dbh = C4::Context->dbh;
|
|
$dbh->{AutoCommit} = 0;
|
|
$dbh->{RaiseError} = 1;
|
|
|
|
# We want numbers to be the same between runs.
|
|
$dbh->do("DELETE FROM action_logs;");
|
|
|
|
t::lib::Mocks::mock_preference('CronjobLog',0);
|
|
cronlogaction();
|
|
my $cronJobCount = $dbh->selectrow_array("SELECT COUNT(*) FROM action_logs WHERE module='CRONJOBS';",{});
|
|
is($cronJobCount,0,"Cronjob not logged as expected.");
|
|
|
|
t::lib::Mocks::mock_preference('CronjobLog',1);
|
|
cronlogaction();
|
|
$cronJobCount = $dbh->selectrow_array("SELECT COUNT(*) FROM action_logs WHERE module='CRONJOBS';",{});
|
|
is($cronJobCount,1,"Cronjob logged as expected.");
|
|
|
|
$dbh->rollback();
|