Lines 132-138
subtest 'get_elasticsearch_mappings() tests' => sub {
Link Here
|
132 |
|
132 |
|
133 |
subtest 'Koha::SearchEngine::Elasticsearch::marc_records_to_documents () tests' => sub { |
133 |
subtest 'Koha::SearchEngine::Elasticsearch::marc_records_to_documents () tests' => sub { |
134 |
|
134 |
|
135 |
plan tests => 56; |
135 |
plan tests => 58; |
136 |
|
136 |
|
137 |
t::lib::Mocks::mock_preference('marcflavour', 'MARC21'); |
137 |
t::lib::Mocks::mock_preference('marcflavour', 'MARC21'); |
138 |
t::lib::Mocks::mock_preference('ElasticsearchMARCFormat', 'ISO2709'); |
138 |
t::lib::Mocks::mock_preference('ElasticsearchMARCFormat', 'ISO2709'); |
Lines 297-304
subtest 'Koha::SearchEngine::Elasticsearch::marc_records_to_documents () tests'
Link Here
|
297 |
sort => 1, |
297 |
sort => 1, |
298 |
marc_type => 'marc21', |
298 |
marc_type => 'marc21', |
299 |
marc_field => '952l', |
299 |
marc_field => '952l', |
300 |
}, |
300 |
}, |
301 |
{ |
301 |
{ |
|
|
302 |
name => 'copydate', |
303 |
type => 'year', |
304 |
facet => 0, |
305 |
suggestible => 0, |
306 |
searchable => 1, |
307 |
sort => 1, |
308 |
marc_type => 'marc21', |
309 |
marc_field => '260c', |
310 |
}, |
311 |
{ |
302 |
name => 'date-of-publication', |
312 |
name => 'date-of-publication', |
303 |
type => 'year', |
313 |
type => 'year', |
304 |
facet => 0, |
314 |
facet => 0, |
Lines 347-352
subtest 'Koha::SearchEngine::Elasticsearch::marc_records_to_documents () tests'
Link Here
|
347 |
MARC::Field->new('210', '', '', a => 'Title 1'), |
357 |
MARC::Field->new('210', '', '', a => 'Title 1'), |
348 |
MARC::Field->new('240', '', '4', a => 'The uniform title with nonfiling indicator'), |
358 |
MARC::Field->new('240', '', '4', a => 'The uniform title with nonfiling indicator'), |
349 |
MARC::Field->new('245', '', '', a => 'Title:', b => 'first record'), |
359 |
MARC::Field->new('245', '', '', a => 'Title:', b => 'first record'), |
|
|
360 |
MARC::Field->new('260', '', '', a => 'New York :', b => 'Ace ,', c => 'c1962'), |
350 |
MARC::Field->new('999', '', '', c => '1234567'), |
361 |
MARC::Field->new('999', '', '', c => '1234567'), |
351 |
# ' ' for testing trimming of white space in boolean value callback: |
362 |
# ' ' for testing trimming of white space in boolean value callback: |
352 |
MARC::Field->new('952', '', '', 0 => ' ', g => '123.30', o => $callno, l => 3), |
363 |
MARC::Field->new('952', '', '', 0 => ' ', g => '123.30', o => $callno, l => 3), |
Lines 483-492
subtest 'Koha::SearchEngine::Elasticsearch::marc_records_to_documents () tests'
Link Here
|
483 |
'First document uniform_title__sort field should contain the title with the first four initial characters removed' |
494 |
'First document uniform_title__sort field should contain the title with the first four initial characters removed' |
484 |
); |
495 |
); |
485 |
|
496 |
|
486 |
# Tests for 'year' type and 'filter_callbacks' |
497 |
# Tests for 'year' type |
487 |
is(scalar @{$docs->[0]->{'date-of-publication'}}, 1, 'First document date-of-publication field should contain one value'); |
498 |
is(scalar @{$docs->[0]->{'date-of-publication'}}, 1, 'First document date-of-publication field should contain one value'); |
488 |
is_deeply($docs->[0]->{'date-of-publication'}, ['1962'], 'First document date-of-publication field should be set correctly'); |
499 |
is_deeply($docs->[0]->{'date-of-publication'}, ['1962'], 'First document date-of-publication field should be set correctly'); |
489 |
|
500 |
|
|
|
501 |
is_deeply( |
502 |
$docs->[0]->{'copydate'}, |
503 |
['1962'], |
504 |
'First document copydate field should be set correctly' |
505 |
); |
506 |
|
490 |
# Second record: |
507 |
# Second record: |
491 |
|
508 |
|
492 |
is(scalar @{$docs->[1]->{author}}, 1, 'Second document author field should contain one value'); |
509 |
is(scalar @{$docs->[1]->{author}}, 1, 'Second document author field should contain one value'); |
Lines 511-518
subtest 'Koha::SearchEngine::Elasticsearch::marc_records_to_documents () tests'
Link Here
|
511 |
'Second document local_classification__sort field should be set correctly' |
528 |
'Second document local_classification__sort field should be set correctly' |
512 |
); |
529 |
); |
513 |
|
530 |
|
514 |
# Tests for 'year' type and 'filter_callbacks' |
531 |
# Tests for 'year' type |
515 |
ok(!(defined $docs->[1]->{'date-of-publication'}), "Second document invalid date-of-publication value should have been removed"); |
532 |
is_deeply( |
|
|
533 |
$docs->[1]->{'copydate'}, |
534 |
['1963','2003'], |
535 |
'Second document copydate field should be set correctly' |
536 |
); |
537 |
is_deeply( |
538 |
$docs->[1]->{'date-of-publication'}, |
539 |
['1900'], |
540 |
'Second document date-of-publication field should be set correctly' |
541 |
); |
516 |
|
542 |
|
517 |
# Mappings marc_type: |
543 |
# Mappings marc_type: |
518 |
|
544 |
|
Lines 647-652
subtest 'Koha::SearchEngine::Elasticsearch::marc_records_to_documents_array () t
Link Here
|
647 |
MARC::Field->new('100', '', '', a => 'Author 2'), |
673 |
MARC::Field->new('100', '', '', a => 'Author 2'), |
648 |
# MARC::Field->new('210', '', '', a => 'Title 2'), |
674 |
# MARC::Field->new('210', '', '', a => 'Title 2'), |
649 |
# MARC::Field->new('245', '', '', a => 'Title: second record'), |
675 |
# MARC::Field->new('245', '', '', a => 'Title: second record'), |
|
|
676 |
MARC::Field->new('260', '', '', a => 'New York :', b => 'Ace ,', c => '1963-2003'), |
650 |
MARC::Field->new('999', '', '', c => '1234568'), |
677 |
MARC::Field->new('999', '', '', c => '1234568'), |
651 |
MARC::Field->new('952', '', '', 0 => 1, g => 'string where should be numeric'), |
678 |
MARC::Field->new('952', '', '', 0 => 1, g => 'string where should be numeric'), |
652 |
); |
679 |
); |
653 |
- |
|
|