Go to file
Martin Renvoize 711bb2dd76
Bug 30144: Add tests for EDIFACT servicing instruction handling
This commit adds comprehensive tests for servicing instruction
processing in both incoming quotes and outgoing orders:

1. Integration tests for incoming quote processing (Koha/EDI.pm)
   - Tests LVC (coded) and LVT (freetext) extraction
   - Tests multiple GIR occurrences with different servicing instructions
   - Tests all combinations: LVC only, LVT only, and LVC+LVT together

2. Test EDIFACT quote file (QUOTES_SERVICING.CEQ)
   - Contains 3 line items with 4 total orders
   - Demonstrates different servicing instruction patterns

3. Fix for multi-occurrence servicing instruction extraction
   - Modified quote_item() to extract servicing instructions
     per GIR occurrence instead of across all occurrences
   - Ensures each order gets only its own servicing instructions
   - Aligns with existing multi-item processing for funds and stock rotation

Test coverage:
- t/db_dependent/Koha/EDI.t: 29 tests for incoming quote processing
- t/db_dependent/Koha/Edifact/Order.t: 18 tests for outgoing order generation
  (previously added)

All tests pass successfully.

Sponsored-by: Martin Renvoize <martin.renvoize@gmail.com>
Signed-off-by: Hannah Dunne-Howrie <hdunne-howrie@westminster.gov.uk>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Pedro Amorim <pedro.amorim@openfifth.co.uk>
2026-08-28 16:36:24 +00:00
.github/workflows
…
C4 Bug 39959: Add a total column to the invoices table 2026-08-25 08:56:32 +00:00
Koha Bug 30144: Add tests for EDIFACT servicing instruction handling 2026-08-28 16:36:24 +00:00
acqui Bug 30144: Add UI for servicing instructions 2026-08-28 16:36:22 +00:00
admin Bug 30144: Add UI for servicing instructions 2026-08-28 16:36:22 +00:00
api Bug 42207: Allow library embed on GET /patrons/{patron_id} 2026-08-21 15:58:25 +00:00
authorities Bug 21453: Copy data to the correct subfields when linking authorities with authorities 2026-04-23 09:24:58 -06:00
basket
…
bin
…
bookings
…
catalogue Bug 42567: Remove C4::Koha::GetNormalizedEAN in favor of MetadataExtractor 2026-08-20 15:34:10 +00:00
cataloguing Bug 42512: Pass already checked/cleaned MARC::Record to Metadata Extractor 2026-07-16 10:54:18 +00:00
circ Bug 42930: Replace title with borrowertitle 2026-07-27 12:12:51 +00:00
clubs
…
course_reserves
…
debian Bug 43159: Restore localisation of PERL5LIB and KOHA_HOME 2026-07-31 13:40:33 +00:00
docs Bug 42726: Add 26.11 release team 2026-06-02 15:07:16 +00:00
erm
…
errors
…
etc Bug 37762: VueJS ILL Module 2026-05-08 12:25:38 -06:00
ill Bug 37762: Circulation: Hook to checkouts/checkins 2026-05-08 12:25:43 -06:00
installer Bug 30144: Add servicing_instruction field to aqorders table 2026-08-28 16:36:19 +00:00
koha-tmpl Bug 30144: Add UI for servicing instructions 2026-08-28 16:36:22 +00:00
labels Bug 42764: Fix spelling errors across the codebase 2026-06-03 16:09:04 +00:00
lib Bug 41521: Silent perlcritic warnings 2026-03-24 09:55:54 +01:00
members Bug 43245: Redirect user if no email was provided 2026-08-14 12:09:30 +00:00
misc Bug 35061: Fix documentation for -pf|preserve-field in import_patrons.pl 2026-08-21 15:58:20 +00:00
offline_circ Bug 40492: Improvements to offline circ actions table 2026-07-28 14:32:44 +00:00
opac Bug 39337: Add is_opac_suppressed helper to C4::Context 2026-08-25 08:56:25 +00:00
patron_lists
…
patroncards Bug 42747: (QA follow-up) Parameterize query, dedupe, and log rejections 2026-08-11 12:39:40 +00:00
plugins
…
pos Bug 40445: (QA follow-up) Show cashup summary modal when completing from registers.pl 2026-07-27 12:12:41 +00:00
preservation Bug 35267: Apply preferences to preview and mailing 2026-04-17 09:18:06 -06:00
recalls
…
reports Bug 42736: Prevent SQL injection in reports/cat_issues_top.pl 2026-08-26 09:23:29 +00:00
reserve Bug 42999: Fix $valid_items flag contamination in reserve/request.pl 2026-07-16 17:05:21 +00:00
reviews
…
rotating_collections
…
serials Bug 43239: Preserve item item type if previousitemtype column is undefined 2026-08-12 15:49:49 +00:00
services
…
sip2
…
skel
…
suggestion Bug 42919: Retain suggestion form values when duplicate warning is shown 2026-07-16 17:05:13 +00:00
svc Bug 42084: (QA follow-up) Simplify 2026-06-03 12:08:17 +00:00
t Bug 30144: Add tests for EDIFACT servicing instruction handling 2026-08-28 16:36:24 +00:00
tags Bug 42254: (QA follow-up) Remove unused var, fixing a FIXME 2026-04-28 15:48:24 -06:00
tools Bug 41105: (QA follow-up) DRY out gender label rendering 2026-08-14 12:09:18 +00:00
virtualshelves Bug 42567: Remove C4::Koha::GetNormalizedEAN in favor of MetadataExtractor 2026-08-20 15:34:10 +00:00
xt Bug 42714: RM follow-up: Fix tests 2026-08-13 11:28:40 +00:00
.codespell-ignore Bug 42764: Fix false positives caused by POD letter-code formatting 2026-06-03 16:09:05 +00:00
.editorconfig
…
.git-blame-ignore-revs
…
.gitignore Bug 26355: Add a Vue island for the self-renewal modal 2026-05-01 09:30:00 -06:00
.htaccess
…
.mailmap
…
.nvmrc Bug 42353: Store the node version in .nvmrc 2026-04-15 09:14:53 -06:00
.perlcriticrc
…
.perltidyrc
…
.prettierrc.js
…
.proverc.dist
…
.stylelintrc.json
…
INSTALL
…
Koha.pm Bug 41029: DBRev 26.06.00.016 2026-08-19 16:07:59 +00:00
LICENSE
…
MANIFEST.SKIP
…
Makefile.PL Bug 42886: Add missing rtl 2026-07-16 10:54:35 +00:00
README
…
README.md
…
README.robots
…
SECURITY.md
…
about.pl Bug 42453: Remove warning 2026-06-29 15:39:07 +00:00
app.psgi
…
build-resources.PL
…
changelanguage.pl
…
cpanfile Bug 41717: Bump PDF::Reuse and PDF::Reuse::Barcode versions 2026-07-28 14:32:22 +00:00
cypress.config.ts Bug 42772: Cypress.env => cy.env 2026-07-20 12:45:01 +00:00
eslint.config.mjs
…
fix-perl-path.PL
…
gulpfile.js Bug 42356: Silence Sass if-function deprecation warning 2026-04-17 09:18:15 -06:00
help.pl
…
kohaversion.pl
…
mainpage.pl
…
package.json Bug 43091: Clean the OPAC Vue dist directory in js:clean 2026-08-03 13:00:37 +00:00
rewrite-config.PL
…
rspack.config.js Bug 43091: Stop emitting staff-only Vue islands into the OPAC dist 2026-08-03 13:00:36 +00:00
tsconfig.json
…
yarn.lock Bug 42772: Adjust yarn.lock 2026-07-20 12:45:02 +00:00

README.md

Koha is a free software integrated library system (ILS).

Koha is distributed under the GNU GPL version 3 or later.

Note: Koha does not accept pull requests from git hosting sites.

Note: This project has its own bug tracker, to report a bug or submit a patch visit https://bugs.koha-community.org.

For guidelines on submitting patches for Koha please visit https://wiki.koha-community.org/wiki/SubmitingAPatch

The developers handbook can be found at https://wiki.koha-community.org/wiki/Developer_handbook

https://koha-community.org/

Koha Logo