Koha-clms/t
David Gustafsson cbd56aa5fc Bug 24807: [20.05.x] Add "year" type to improve sorting behaviour
Add a "year" search field type. Fields with this type will only
retain values that looks like years, so invalid values such as
whitespace or word characters will not be indexed.
This for instance improves the behaviour when sorting by
"date-of-publication". If all values are indexed, records with
junk data instead of valid years will appear first among the search
results, drowning out more relevant hits. If assigning this field
the "year" type these records will instead always appear last,
regarless of sort order.

To test:

1) Have at least two biblios, one with a valid year in 008 (pos 7-10)
and another with an invalid one ("uuuu" for example)
2) Perform a wildcard search (*) and sort results by publication date.
3) The record with invalid year of pulication in 008 should appear first
4) Apply patch and run database updates
5) Reindex ElasticSearch
6) Perform the same search as in 2)
7) The record with the invalid year should now appear last

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: Add database update script

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: Update tests

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: Add suppport for uncertain fields and ranges

To test:
1 - Have some records with uncertain dates in the 008
    19uu, 195u, etc.
2 - Index them in Elasticsearch
3 - Do a search that will return them
4 - Sort results by publication/copyright date
5 - Note odd results
6 - Apply patch
7 - Reindex
8 - Sorting should be improved

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: Refactor using tokenize_callbacks

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: Simplify with new and imporved value_callbacks

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: (follow-up) Fix spelling

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: (follow-up) Add support for spaces as unknown characters

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Bug 24807: (QA follow-up) Remove uneccessary tests

These tests fail now, the code expects a real response from ES in Indexer.pm
but these tests mock 'bulk' and so don't have the necessary fields.

We are testing the same code above and can just add the _id == biblionumber test

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2020-10-16 14:27:07 +00:00
..
Acquisition
…
Biblio Bug 25709: Rename systempreference to NotesToHide 2020-07-31 21:14:42 +00:00
Budgets
…
Circulation Bug 24840: Replace DateTime->now with dt_from_string 2020-04-08 11:54:23 +01:00
External Bug 22010: Check preferences for ebook integration 2019-04-30 11:42:51 +00:00
Koha Bug 25273: Make match-heading rely on authority type configuration 2020-09-28 15:24:35 +00:00
LangInstaller/templates
…
Members
…
Number Bug 18736: (QA follow-up) Change to signed, add large int test 2019-03-21 16:29:06 +00:00
SIP
…
Search
…
Serials Bug 24903: Add tests for _handle_seqno 2020-04-14 08:29:11 +01:00
Test
…
db_dependent Bug 24807: [20.05.x] Add "year" type to improve sorting behaviour 2020-10-16 14:27:07 +00:00
edi_testfiles
…
etc
…
lib Bug 26162: Don't fall into an infinite loop 2020-08-31 20:05:42 +00:00
00-checkdatabase-version.t
…
00-deprecated.t
…
00-load.t Bug 24823: Drop Catmandu dependency 2020-05-12 11:43:19 +01:00
00-merge-conflict-markers.t
…
00-testcritic.t Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
00-valid-xml.t Bug 24494: Make the regex more exact 2020-02-19 11:30:45 +00:00
Auth.t Bug 22943: Remove unused line from Auth.t 2020-03-16 11:00:37 +00:00
AuthUtils.t
…
Auth_with_shibboleth.t Bug 23042: Correct shib param escaping 2019-11-27 11:30:20 +00:00
AuthoritiesMarc_MARC21.t
…
AuthoritiesMarc_UNIMARC.t
…
Barcodes_EAN13.t
…
Barcodes_annual.t
…
Barcodes_hbyymmincr.t
…
Barcodes_incremental.t
…
Biblio.t Bug 26133: Remove GetMarcHosts 2020-08-13 18:06:47 +00:00
Biblio2.t Bug 11529: (follow-up) Fix QA issues 2019-08-05 15:03:19 +01:00
Boolean.t
…
Budgets.t
…
Calendar.t Bug 25723: (QA follow-up) Handle holiday and exception on same day 2020-07-27 17:40:25 +00:00
Charset.t
…
Circulation_barcodedecode.t
…
ClassSortRoutine.t
…
ClassSortRoutine_Dewey.t
…
ClassSortRoutine_Generic.t
…
ClassSortRoutine_LCC.t
…
ClassSource.t
…
Context.t Bug 25360: Use secure flag for CGISESSID cookie when using HTTPS 2020-08-31 20:05:05 +00:00
Contract.t
…
Creators.t
…
DateUtils.t Bug 25617: (QA follow-up) Add responses to tests 2020-05-29 11:30:02 +02:00
Debug.t
…
EdiInvoice.t
…
EdiTransport.t Bug 20254: Add tests for transport ingest 2019-08-20 15:04:26 +01:00
Edifact.t Bug 21580: Add test for message buyer_ean method 2019-10-10 08:23:04 +01:00
Ediorder.t Bug 23926: Limit GIR segment to 5 pieces of info 2020-03-10 15:18:22 +00:00
Ediordrsp.t
…
Form_MessagingPreferences.t
…
HtmlTags.t
…
Images.t
…
ImportBatch.t
…
Installer_PerlModules.t Bug 19735: Move Perl deps definitions into a cpanfile 2020-02-12 16:33:02 +00:00
Installer_pm.t Bug 19735: Move Perl deps definitions into a cpanfile 2020-02-12 16:33:02 +00:00
ItemCirculationAlertPreference.t
…
Koha.t Bug 23768: Adjust the test for invalid ISBN 2019-11-07 13:02:59 +00:00
Koha_Email.t
…
Koha_MetadataRecord.t
…
Koha_SearchEngine_Elasticsearch_Browse.t Bug 24545: Fix newly added files 2020-02-24 13:31:27 +00:00
Koha_Template_Plugin_Cache.t
…
Koha_Template_Plugin_Koha.t Bug 20415: add Koha.ArePluginsEnabled Template Toolkit method 2020-03-26 11:41:54 +00:00
Koha_Util_FrameworkPlugin.t
…
Koha_Util_MARC.t
…
Labels.t
…
Labels_split_Regex.t
…
Labels_split_ccn.t
…
Labels_split_ddcn.t
…
Labels_split_lccn.t
…
LangInstaller.t
…
Languages.t Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
Letters.t
…
Logger.t Bug 25172: Adjust tests 2020-04-22 13:44:06 +01:00
Makefile.t Bug 21395: Ignore .perlcriticrc in t/Makefile.t 2020-07-13 17:13:00 +00:00
Matcher.t Bug 23324: Add an ISBN normalization routine 2019-08-16 12:26:48 +01:00
Members_Messaging.t
…
OpenLibrarySearch.t
…
Output.t Bug 24369: Add CORS support to output_with_http_headers() 2020-03-05 12:59:44 +00:00
Output_JSONStream.t
…
Patron.t Bug 14570: Make it possible to add multiple guarantors to a record 2019-08-20 16:04:48 +01:00
Patroncards.t
…
Patroncards_Batch.t
…
Patroncards_Lib.t
…
Patroncards_Patroncard.t
…
Patroncards_Profile.t
…
Patroncards_Template.t
…
Prices.t Bug 25750: fix fallback to ecost_tax_included/ecost_tax_excluded 2020-09-03 15:40:42 +00:00
RecordProcessor.t Bug 25008: Tests for ->options 2020-04-14 08:31:22 +01:00
Ris.t
…
SMS.t
…
Scheduler.t
…
Scrubber.t
…
Search.t
…
Search_PazPar2.t
…
SimpleMARC.t Bug 17510: update MMT-related unit tests 2020-02-21 16:01:28 +00:00
SocialData.t
…
Stats.t
…
SuggestionEngine.t Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
SuggestionEngine_AuthorityFile.t
…
TmplToken.t
…
Token.t Bug 17845: (RM follow-up) Restore a removed test 2020-03-10 18:49:37 +00:00
XSLT.t
…
dummy.t Bug 21395: Make perlcritic happy 2020-07-13 16:44:43 +00:00
template_filters.t Bug 22466: Add tests 2019-03-07 18:17:32 +00:00
timezones.t
…