1 package KohaTest::ImportBatch;
11 sub testing_class { 'C4::ImportBatch' };
14 sub routines : Test( 1 ) {
24 AddItemsToImportBiblio
25 BatchFindBibDuplicates
31 GetImportBatchRangeDesc
32 GetItemNumbersFromImportBatch
33 GetNumberOfNonZ3950ImportBatches
38 GetImportBatchOverlayAction
39 SetImportBatchOverlayAction
40 GetImportBatchNoMatchAction
41 SetImportBatchNoMatchAction
42 GetImportBatchItemAction
43 SetImportBatchItemAction
44 GetImportBatchItemAction
45 SetImportBatchItemAction
48 GetImportRecordOverlayStatus
49 SetImportRecordOverlayStatus
52 GetImportRecordMatches
53 SetImportRecordMatches
55 _update_import_record_marc
59 _update_batch_record_counts
64 can_ok($self->testing_class, @routines);
67 sub startup_50_add_matcher : Test( startup => 1 ) {
69 # create test MARC21 ISBN matcher
70 my $matcher = C4::Matcher->new('biblio');
71 $matcher->threshold(1000);
72 $matcher->code('TESTISBN');
73 $matcher->description('test MARC21 ISBN matcher');
74 $matcher->add_simple_matchpoint('isbn', 1000, '020', 'a', -1, 0, '');
75 my $matcher_id = $matcher->store();
76 like($matcher_id, qr/^\d+$/, "store new matcher and get back ID");
78 $self->{'matcher_id'} = $matcher_id;
81 sub shutdown_50_remove_matcher : Test( shutdown => 6) {
83 my @matchers = C4::Matcher::GetMatcherList();
84 cmp_ok(scalar(@matchers), ">=", 1, "at least one matcher present");
86 my $testisbn_count = 0;
88 foreach my $matcher (@matchers) {
89 if ($matcher->{'code'} eq 'TESTISBN') {
91 $matcher_id = $matcher->{'matcher_id'};
94 ok($testisbn_count == 1, "only one TESTISBN matcher");
95 like($matcher_id, qr/^\d+$/, "matcher ID is valid");
96 my $matcher = C4::Matcher->fetch($matcher_id);
97 ok(defined($matcher), "got back a matcher");
98 ok($matcher_id == $matcher->{'id'}, "got back the correct matcher");
99 C4::Matcher->delete($matcher_id);
100 my $matcher2 = C4::Matcher->fetch($matcher_id);
101 ok(not(defined($matcher2)), "matcher removed");
103 delete $self->{'matcher_id'};