|
Lines 16-62
Link Here
|
| 16 |
# along with Koha; if not, see <http://www.gnu.org/licenses>. |
16 |
# along with Koha; if not, see <http://www.gnu.org/licenses>. |
| 17 |
|
17 |
|
| 18 |
use Modern::Perl; |
18 |
use Modern::Perl; |
| 19 |
|
|
|
| 20 |
use Test::More; |
| 21 |
use Test::MockModule; |
| 22 |
use Test::Warn; |
| 23 |
|
| 24 |
use MARC::Record; |
19 |
use MARC::Record; |
|
|
20 |
use Test::More tests => 3; |
| 21 |
use Test::Warn; |
| 25 |
|
22 |
|
| 26 |
use Module::Load::Conditional qw/check_install/; |
23 |
use t::lib::TestBuilder; |
| 27 |
|
24 |
use t::lib::Mocks; |
| 28 |
BEGIN { |
|
|
| 29 |
if ( check_install( module => 'Test::DBIx::Class' ) ) { |
| 30 |
plan tests => 13; |
| 31 |
} else { |
| 32 |
plan skip_all => "Need Test::DBIx::Class" |
| 33 |
} |
| 34 |
} |
| 35 |
|
25 |
|
| 36 |
use Test::DBIx::Class; |
26 |
use Koha::Database; |
|
|
27 |
use C4::Matcher qw( GetMatcherList GetMatcherId ); |
| 37 |
|
28 |
|
| 38 |
my $db = Test::MockModule->new('Koha::Database'); |
29 |
my $schema = Koha::Database->new->schema; |
| 39 |
$db->mock( _new_schema => sub { return Schema(); } ); |
30 |
my $builder = t::lib::TestBuilder->new; |
|
|
31 |
$schema->storage->txn_begin; |
| 40 |
|
32 |
|
| 41 |
use_ok('C4::Matcher', qw( GetMatcherList GetMatcherId )); |
33 |
subtest 'GetMatcherList' => sub { |
|
|
34 |
plan tests => 9; |
| 42 |
|
35 |
|
| 43 |
fixtures_ok [ |
36 |
$schema->resultset('MarcMatcher')->delete_all; |
| 44 |
MarcMatcher => [ |
37 |
my $matcher1 = $builder->build({ source => 'MarcMatcher', |
| 45 |
[ 'matcher_id', 'code', 'description', 'record_type', 'threshold' ], |
38 |
value => { code => 'ISBN', description => 'ISBN', record_type => 'red', threshold => 1 }, |
| 46 |
[ 1, 'ISBN', 'ISBN', 'red', 1 ], |
39 |
}); |
| 47 |
[ 2, 'ISSN', 'ISSN', 'blue', 0 ] |
40 |
my $matcher2 = $builder->build({ source => 'MarcMatcher', |
| 48 |
], |
41 |
value => { code => 'ISSN', description => 'ISSN', record_type => 'blue', threshold => 0 }, |
| 49 |
], 'add fixtures'; |
42 |
}); |
| 50 |
|
43 |
|
| 51 |
my @matchers = C4::Matcher::GetMatcherList(); |
44 |
my @matchers = C4::Matcher::GetMatcherList(); |
| 52 |
|
45 |
|
| 53 |
is( $matchers[0]->{'matcher_id'}, 1, 'First matcher_id value is 1' ); |
46 |
is( $matchers[0]->{'matcher_id'}, $matcher1->{matcher_id}, 'First matcher_id value' ); |
| 54 |
|
47 |
|
| 55 |
is( $matchers[1]->{'matcher_id'}, 2, 'Second matcher_id value is 2' ); |
48 |
is( $matchers[1]->{'matcher_id'}, $matcher2->{matcher_id}, 'Second matcher_id value' ); |
| 56 |
|
49 |
|
| 57 |
my $matcher_id = C4::Matcher::GetMatcherId('ISBN'); |
50 |
my $matcher_id = C4::Matcher::GetMatcherId('ISBN'); |
| 58 |
|
51 |
|
| 59 |
is( $matcher_id, 1, 'testing getmatcherid' ); |
52 |
is( $matcher_id, $matcher1->{matcher_id}, 'testing getmatcherid' ); |
| 60 |
|
53 |
|
| 61 |
my $testmatcher; |
54 |
my $testmatcher; |
| 62 |
|
55 |
|
|
Lines 79-84
is( $testmatcher->code(), 'match on ISBN', 'testing code accessor' );
Link Here
|
| 79 |
$testmatcher->description('match on ISSN'); |
72 |
$testmatcher->description('match on ISSN'); |
| 80 |
|
73 |
|
| 81 |
is( $testmatcher->description(), 'match on ISSN', 'testing code accessor' ); |
74 |
is( $testmatcher->description(), 'match on ISSN', 'testing code accessor' ); |
|
|
75 |
}; |
| 82 |
|
76 |
|
| 83 |
subtest '_get_match_keys() tests' => sub { |
77 |
subtest '_get_match_keys() tests' => sub { |
| 84 |
|
78 |
|
|
Lines 402-404
sub get_leader_matchpoint {
Link Here
|
| 402 |
|
396 |
|
| 403 |
return $matchpoint; |
397 |
return $matchpoint; |
| 404 |
} |
398 |
} |
| 405 |
- |
399 |
|
|
|
400 |
$schema->storage->txn_rollback; |