Commit Graph

7109 Commits

Author SHA1 Message Date
Jonathan Druart 715bc1e182 Bug 35962: (bug 35843 follow-up) Fix BackgroundJob.t on D10
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit d7669ae2a9)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-13 11:35:51 +01:00
Matt Blenkinsop 7e8c7c4773 Bug 35940: Close modal before typing
Tests currently fail due to a modal remaining open. This patch closes the modal to make the tests pass

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 269d6f6444)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-13 11:34:40 +01:00
Jonathan Druart 3fb41717c0 Bug 35940: (bug 35477 follow-up) Fix cypress tests
AssertionError: Timed out retrying after 10000ms: Expected to find element: `main div[class='dialog message']`, but never found it.

We moved from message to alert.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit f1b32b5316)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-13 11:34:40 +01:00
Nick Clemens 3ac1d25101 Bug 35277: (follow-up) Fix tests
This patch adjusts the tests to mock the Background to ensure it is called
and directly generate the pseudonymized transactions for testing

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit a34593a95a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-09 09:08:05 +01:00
Nick Clemens 6f7b74597c Bug 35277: (follow-up) Remove debugging module
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c4315faba0)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-09 09:08:05 +01:00
Nick Clemens 1a7a5e3412 Bug 35277: Unit tests
prove -v t/db_dependent/Koha/BackgroundJob/PseudonymizeStatistic.t

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c6d6938ef9)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-09 09:08:05 +01:00
Tomas Cohen Arazi 82fa40b618 Bug 35922: Fix www/batch.t
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit baa7c050d1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-01 17:15:42 +01:00
Martin Renvoize 419fbca34c Bug 30230: (QA follow-up) Add unit tests for API definition change
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 6da8a7c46b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-01 16:22:55 +01:00
David Cook 801d37375c Bug 30230: (follow-up) fix unit test
Signed-off-by: David Cook <dcook@prosentient.com.au>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 7b6ef3fd47)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-01 16:22:55 +01:00
Jonathan Druart f9be00361c Bug 35744: Implement +strings for GET /patrons/:patron_id
In order to retrieve the library's name and patron category's
description alongwith other patron's info.

Test plan:
Run the following command before and after this patch:

% curl -u koha:koha --request GET 'http://localhost:8081/api/v1/patrons/42' --header "Content-Type: application/json" --header "x-koha-embed: +strings" | jq

Notice that you now have _strings which contains the library's name and
patron category's description

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5464d11099)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-02-01 15:41:21 +01:00
Kyle M Hall 52d43922b8 Bug 35461: Add unit tests
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit e70e1f8a17)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-31 14:27:39 +01:00
Katrin Fischer a1da7ef8f8 Bug 34979: Add unit test for comparing YAMl files with sysprefs.sql
The unit tests will help to detect any discrepancies
and missing entries in the YAML and sysprefs.sql files.

To test:
* Apply only this patch
* prove -v t/db_dependent/check_sysprefs.t
* It will fail.
* Apply other patches
* Run database update
* Re-run test. It should pass now.
* Recreate your database or reset_all with patches applied.
* System preferences should be installed correctly.
* Test should still pass.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 06ba285562)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-31 14:10:42 +01:00
Tomas Cohen Arazi 49c4b0fee0 Bug 29930: Regression tests
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Alexander Wagner <alexander.wagner@desy.de>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit fe006e535d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-31 13:56:32 +01:00
Marcel de Rooy 73577f17ad Bug 35843: Correct invalid exception
Test plan:
Run background job tests. Especially the changed one.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Magnus Enger <magnus@libriotech.no>
All test pass when running this:
prove t/db_dependent/Koha/BackgroundJobs*
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 291268f318)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-31 13:51:08 +01:00
Jonathan Druart 47943a23a7 Bug 34913: Adjust C4::Utils::DataTables::VirtualShelves
And remove C4::Utils::DataTables, which should no longer be reused
anyway.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 4a65c417f8bfeefe9299981b415f3fbfca5cb5a4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-29 10:15:53 +01:00
Jonathan Druart ad1c38b589 Bug 34913: Fix a selenium test
t/db_dependent/selenium/administration_tasks.t ....... 3/3 Cannot show all entries from table //div[@id="libraries_wrapper"] at /kohadevbox/koha/t/lib/Selenium.pm line 247.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 204a840a4d71c677d49378588f4ed529cdc83fea)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-29 10:15:53 +01:00
Tomas Cohen Arazi b1e9498b6f Bug 34893: Unit tests for C4::Auth::checkpw
This patch introduces some tests on the current (and new) behavior for
the `checkpw` function.

I needed it to better understand if an edge case was actually possible
(it wasn't).

Found a really minor annoyance for the internal check with expired
password not returning the $patron object for consistency with the other
use cases.

I think this method deserves (at least) changing the return value to a
sane data structure. But that's not target for backporting to stable
releases. So a separate bug.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 5476b18e7ea34e08d9dd163e2c446d5b223cf032)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-29 10:15:53 +01:00
Kyle M Hall 2aa272ad9c Bug 34893: (QA follow-up) Tidy code for qa script
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit a19a1d2079e562d62d766aa9f996a7586d73882d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-29 10:15:53 +01:00
Kyle M Hall 9301b66a37 Bug 34893: Add unit tests
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 29782174570a331c1b9f1ac8196ce06364f8f691)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-29 10:15:53 +01:00
Emily Lamancusa baebf8e42c Bug 35322: (QA follow-up) Perltidy
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 9e168686cc)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-17 10:51:36 +01:00
Kyle M Hall 85a77895b5 Bug 35322: Add unit tests
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 77f045e9a5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-17 10:51:36 +01:00
Nick Clemens e1157dcdcd Bug 35086: Tidy tests
Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit ddbd00de72)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-17 10:22:47 +01:00
Nick Clemens 636920558c Bug 35086: Add chunk_size option to elasticsearch configuration
Whne performing batch operations we can send a large numebr of records for reindexing at once.
Currently this can create requetss that are too large for Elasticsearch to process. We need
to break these requests into chunks/

This patch adds a chunk_size configuration to the elasticsearch stanza in koha-conf.xml

If blank we default to 5000.

To test:
0 - Have Koha using Elasticsearch
1 - Create and download a report of all barcodes:
    SELECT barcode FROM items
2 - Batch modify these items
3 - Note a single ESindexing job is created
4 - Create and download a report of all authority ids:
    SELECT auth_header.authid FROM auth_header
5 - Setup a marc modification template, and batch modify all the authorities
6 - Again note a single ES backgorund job is created
7 - Apply patch
8 - Repeat the modifications above - you still get a single job
9 - Edit koha-conf.xml and add <chunk_size>250</chunk_size> to elasticsearch stanza
10 - Repeat modifications - you now get several background ES jobs
11 - prove -v t/db_dependent/Koha/SearchEngine/Elasticsearch/Indexer.t

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 9951e230e4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-17 10:22:47 +01:00
Marcel de Rooy ce924fa1db Bug 34999: Add unit test
Test plan:
Run t/db_dependent/api/v1/auth.t
[Bonus] Run prove t/db_dependent/api/v1

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit b8d9cce664)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-17 10:18:42 +01:00
Tomas Cohen Arazi 0df6ad0aa9 Bug 32551: Regression tests
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5292903dc1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-15 15:16:19 +01:00
Nick Clemens a3479fad8b Bug 35757: (QA follow-up) Tidy
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 40d7a90bc5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-15 15:02:22 +01:00
Matt Blenkinsop f0fc65d109 Bug 35757: Fix unit tests for external counter registry API
This patch updates the unit tests for the external counter registry API used in the Usage Statistics module. The intent of the tests is to identify any changes in the external response that could lead to errors in Koha. To do this, the tests now compare the list of hash keys returned in the response with the current definition in Koha, and identifies any new fields that need to be added to the definition.

Test plan:
prove t/db_dependent/api/v1/erm_counter_registries.t
prove t/db_dependent/api/v1/erm_sushi_services.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit f42741d32c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-15 15:02:22 +01:00
Nick Clemens d0dfe6b4f4 Bug 35293: Unit test
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit cd3224d558)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-15 14:39:11 +01:00
Jonathan Druart 5aa213e210 Bug 35598: Fix selenium/authentication_2fa.t random failure
Jenkins is failing with
koha_1       | STRACE:	/usr/share/perl5/Try/Tiny.pm:123 in Selenium::Remote::Driver::catch {...}
koha_1       | 	/usr/share/perl5/Selenium/Remote/Driver.pm:361 in Try::Tiny::try
koha_1       | 	(eval 582):1 in Selenium::Remote::Driver::__ANON__
koha_1       | 	(eval 584):2 in Selenium::Remote::Driver::__ANON__
koha_1       | 	(eval 556):17 in Selenium::Remote::Driver::_execute_command
koha_1       | 	/usr/share/perl5/Selenium/Remote/WebElement.pm:125 in Selenium::Remote::WebElement::_execute_command
koha_1       | 	t/db_dependent/selenium/authentication_2fa.t:276 in Selenium::Remote::WebElement::send_keys
koha_1       | 	/usr/share/perl/5.32/Test/Builder.pm:334 in main::__ANON__
koha_1       | 	/usr/share/perl/5.32/Test/Builder.pm:334 in (eval)
koha_1       | 	/usr/share/perl/5.32/Test/More.pm:809 in Test::Builder::subtest
koha_1       | 	t/db_dependent/selenium/authentication_2fa.t:294 in Test::More::subtest
koha_1       |
selenium_1   | 1702911648831	Marionette	INFO	Stopped listening on port 41385
selenium_1   | JavaScript error: resource:///modules/Interactions.jsm, line 230: NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIUserIdleService.removeIdleObserver]
selenium_1   | 15:00:49.452 INFO [ActiveSessions$1.onStop] - Removing session c3461b22-7a80-4b56-b177-653a53cc2651 (org.openqa.selenium.firefox.GeckoDriverService)
koha_1       |     # Looks like you planned 7 tests but ran 3.
koha_1       |
koha_1       | #   Failed test 'Enforce 2FA setup on first login'
koha_1       | #   at t/db_dependent/selenium/authentication_2fa.t line 294.
koha_1       | Error while executing command: element not interactable: Element <input id="pin_code" name="pin_code" type="text"> is not reachable by keyboard at /usr/share/perl5/Selenium/Remote/Driver.pm line 411.

The error is: "Element <input id="pin_code" name="pin_code" type="text"> is not reachable by keyboard"

A guess is that the input is either 1. outside of the viewport, or 2. not
displayed yet.

1. We are hidding #registration-form then show it when we retrieved the
   info (after POST /api/v1/auth/two-factor/registration)
2. Couldn't there be a race condition?
In auth.tt
284                     success: function (data) {
292                         $("#registration-form").show();
And in the selenium test:
$s->wait_for_ajax; # There is an ajax request to populate the qr_code and the secret
Not sure this wait_for_ajax is waiting for the end of success, I don't
think so.

This patch is supposed to fix both theories.

Test plan:
0. Do not apply the patch
1. Edit auth.tt and sleep 1 second before showing the form:
290                         const sleep = ms => new Promise(r => setTimeout(r, ms));
291                         await sleep(1000);
292                         $("#registration-form").show();

You will also need to replace the following line (284):
  success: function (data) {
with
  success: async function (data) {

2. prove t/db_dependent/selenium/authentication_2fa.t
=> "is not reachable by keyboard" error!

3. Apply the patch, keep the sleep

4. prove t/db_dependent/selenium/authentication_2fa.t
=> Tests are passing

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit (tcohen): Tidied a bit to clear complaints
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 3270d32191)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-15 14:28:55 +01:00
Pedro Amorim 95884923f7 Bug 35587: (QA follow-up): QA script tidy
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 520c84756a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-08 15:35:58 +01:00
Aleisha Amohia fc777d84a4 Bug 35587: Do not trigger transfer if lost item returned and BlockReturnOfLostItems enabled
This fixes current buggy behaviour - when BlockReturnOfLostItems is enabled, no transfer should be triggered and the lost status should be retained.

To test:

1. Go to Koha Administration -> Global system preferences
2. Set the BlockReturnOfLostItems system preference to Block
3. Enable the AutomaticItemReturn system preference (this is simply to make testing a bit faster)
4. Take note of your logged in library
5. Search for an item where the home library is NOT the same as your logged in library
6. Edit this item and give it a lost status
7. Check in the item
8. Notice the item is returned and a transfer is automatically triggered
9. If you go to the item record page, the lost status has been remove

10. Apply the patch and restart services

11. Edit the item again and give it a lost status. This will also cancel the transfer
12. Check in the item
13. Confirm the transfer is NOT triggered and the lost status is retained as expected.
14. Go back to system preferences and disable the BlockReturnOfLostItems system preference (set to "Don't block")
15. Check in the item
16. Confirm the transfer is triggered and lost status is removed

17. Confirm tests pass

prove t/db_dependent/Circulation/Returns.t
prove t/db_dependent/Circulation/Branch.t

Sponsored-by: Pymble Ladies' College
Signed-off-by: Esther <esther@bywatersolutions.com>
Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 930ad0178d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-08 15:35:58 +01:00
Katrin Fischer d8df06a8cd Bug 35070: (QA follow-up) Fix missing TT filter
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c3d78bc35a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-08 15:18:37 +01:00
Julian Maurice 829ef649c0 Bug 35070: Add test verifying plugins cannot override core templates
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 2233c230b2)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-08 15:18:37 +01:00
Tomas Cohen Arazi cd2e54f6e1 Bug 35070: Tidy
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 21fd864416)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-08 15:18:37 +01:00
Julian Maurice fe5b461cbf Bug 35070: Add plugin hook template_include_paths
It allows to add paths to Template::Toolkit's INCLUDE_PATH option

http://template-toolkit.org/docs/manual/Config.html#section_INCLUDE_PATH

Test plan:
1. Install the modified kitchen sink plugin:

    git clone --branch template-include-paths \
    https://github.com/jajm/dev-koha-plugin-kitchen-sink.git

2. Run misc/devel/install_plugins.pl
3. Restart memcached and koha
4. Go to Administration -> Manage Plugins
5. Run the KitchenSink plugin's tool
6. Click on "Schedule greeting"
7. Go to Administration -> Manage jobs
8. If you don't see any jobs, uncheck "Current jobs only"
9. You should see a job of type "Unknown job type
   'plugin_kitchensink_greeter". Click on the "View" button
10. Under the Report section you should see "This is the report block"
11. Under the Detailed messages section you should see "This is the
    detail block"
12. Open the browser console, you should see a message "This is the js
    block"

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 5047e0761c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-08 15:18:37 +01:00
Julian Maurice d95aa51639 Bug 35588: Tidy up t/db_dependent/AuthorisedValues.t
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 002e02710b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 17:05:14 +01:00
David Cook 6688687d93 Bug 35588: Scope authorised value desc lookup according to field/subfield
This patch ensures that the authorised value descriptions looked up
are for the correct field/subfield designated in the CSV profile.

Test plan:
0. Do not apply the patch yet!
1. Go to http://localhost:8081/cgi-bin/koha/tools/csv-profiles.pl
2. Add a CSV profile with the default values and using the following
for the "Profile MARC fields":
000|001|003|005|006|007|008|010|015|016|020|022|040|050|082|100|110|
111|130|240|243|245|246|247|250|260|300|336|337|338|440|490|500|501|
505|520|530|600|610|611|630|648|650|651|690|700|710|711|856|887|942|995

3. Create a new List
4. Add all the database's bibs to that list using SQL like the following (where the shelfnumber equals the number for your list):
insert into virtualshelfcontents (shelfnumber,biblionumber,borrowernumber) select 1,biblionumber,51 from biblio;

5. Go to that list in the staff interface
6. Download that list using your CSV profile

7. Apply the patch
8. koha-plack --reload kohadev

9. Download that list using your CSV profile
10. Note that the output is a little slower, but still quick enough.
11. Note that the output is a bit different. For records like "Gairm",
the output will end in "1" instead of "Yes". This is correct, because
this subfield isn't an authorised value!!!

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit f53ebe874e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 17:05:14 +01:00
David Cook 548c9ce885 Bug 35579: Add unit test
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit ca754a2c5e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 17:03:53 +01:00
Nick Clemens 5ca5900f91 Bug 35491: Add logging to RevertWaitingStatus
This patch simply adds a logaction line to RevertWaitingStatus

To test:
1 - Enable HoldsLog
2 - Place a hold
3 - Fill the hold
4 - Revert the waiting status
5 - Note there is no action log added
6 - Apply patch
7 - Repeat 2-4
8 - Confirm you now have a MODIFY action logged for the reversion

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 4e42f1182d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 16:08:46 +01:00
Martin Renvoize 52772da921 Bug 30287: (follow-up) Make unit test more reliable in ktd
This patch mocks NoticeCSS earlier to ensure we're not inadvertantly
failing due to a local setup in ktd having added to the preference.

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 12e90c8b7d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 16:03:42 +01:00
Martin Renvoize f89d178b06 Bug 30287: (follow-up) Unit test for html_content
This patch adds a unit test for the new `html_content` method introduced
to Koha::Notice::Template in the previous patch.

Test
1) Run the new unit test ;P

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit c260f4a374)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 16:03:42 +01:00
Matt Blenkinsop 86be92a608 Bug 35204: Add unit tests
prove t/db_dependent/api/v1/password_validation.t

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 711f9a041a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:51:13 +01:00
Nick Clemens e5c5424023 Bug 35574: Tidy
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 90cdeeac13)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:48:28 +01:00
Martin Renvoize fa9dd49dfb Bug 35574: Add unit tests for api change
We add the corresponding unit tests for the biblio/bookings endpoint to
ensure no regressions in the future.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 8bffe42f6b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:48:28 +01:00
Katrin Fischer fd615a76a3 Bug 35524: Fix terminology in basket group CSV export
Bookseller should be vendor to match our preferred terminology.

To test:
* Run:
  prove t/db_dependent/Acquisition/GetBasketGroupAsCSV.t
* Add a basket with at least one order line
* Close basket and add to a basket group
* Close the basket group
* Export as CSV
* Verify headers include "Bookseller"
* Apply patch, restart all
* Repeat export, it should now say "Vendor"
* Rerun tests

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 826a6cbdb9)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:22:05 +01:00
Kyle M Hall 6ee45171f6 Bug 18139: Tidy code
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit e62e1be323)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:17:35 +01:00
Kyle M Hall e9b3a41ee2 Bug 18139: Add/update unit tests
Signed-off-by: Eric Gosselin <eric.gosselin@inlibro.com>
Signed-off-by: Marc Véron <veron@veron.ch>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 9eb8d69ca1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:17:34 +01:00
Marcel de Rooy bfb2a929e3 Bug 35507: Plugins.t - Mock SessionStorage, remove KitchenSink
Removing the CGI::Session behavior to auto-commit by mocking
SessionStorage makes that the $plugin->test_template does no
longer commit.

Since KitchenSink includes a CREATE TABLE, removing that code
removes the second implicit commit. We might move that code
to its own script?

Adds a missing rollback too at the end.

Test plan:
Run prove t/db_dependent/Koha/Plugins/Plugins.t
Verify that no records got added to plugin_data/methods table.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit dc62d9bed5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:15:24 +01:00
Martin Renvoize 38b73e2fc0 Bug 35468: (follow-up) Fix for older DateTimes
We can't use the rfc3339 method from DateTime itself as older Debians
don't ship with a recent enough version.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 0ac0f58185)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:05:10 +01:00
Nick Clemens f946be6f5d Bug 35468: (follow-up) Test only the specific permission needed
The tests were granting circulation top-level permissions - we should be able to
perform the actions with only 'manage_bookings'. This patch updates the tests to
use the narrower permission.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit a2005cd32c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:05:10 +01:00
Nick Clemens 6c72baf1f7 Bug 35468: (follow-up) Fix QA complaints
Tidyness
Use dt_from_string, not DateTime->now
Add exec flag

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 68ff5edb12)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:05:10 +01:00
Martin Renvoize c6f5c4d13d Bug 35468: Unit tests
This patch adds all the 'basic' unit tests one would expect to find with
the api endpoints.  I've been working on this as a follow-up to bug
29002 as promised, but hadn't yet submitted them as I wanted to get the
full coverage.. but having these basics in early makes sense whilst I
continue on the more advanced cases.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 8ed228ed9e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 15:05:10 +01:00
Jonathan Druart 46e66414a7 Bug 35556: Fix random selenium failure if category on second page
If 'Test category' if on the second page the test will fail to
locate the Edit button.

To make sure it is displayed on the screen we are selecting "All" in the
dropdown list.

This is done a couple of lines later in the script for the same purpose.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 6f45fd4574)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2024-01-03 14:38:22 +01:00
Pedro Amorim 684d9263e8
Bug 35418: Add TR_B2 tests
This test file adds tests for the TR_B2 specific report.
But also tests for this specific bug, which only happens if
the report time period ends in december

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Andrew Auld <andrew.auld@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-29 17:36:11 -03:00
Pedro Amorim 55f024c0e3
Bug 35115: (QA follow-up):
Spelling.
Tidyness.
Removal of leftover warn

Nick's patch fixes the issue as described, and I agree that it is the ideal solution here.
prove t/db_dependent/api/v1/erm_eholdings* passes
prove t/db_dependent/Koha/BackgroundJob/CreateEHoldingsFromBiblios.t passes

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-29 17:36:10 -03:00
Nick Clemens f984969690
Bug 35115: Move store routine from Resource to Title and update code
These patches move the store routine from Koha::ERM::EHoldings::Resource to Koha::ERM::EHoldings::Title as the code deals exclusively with title fields.

It updates the code to ensure that records are created when a title is not attched to a biblio, and that only the biblio title field is updated when updating an eholdings title.

To test:
 1 - Enable ERMModule sys pref
 2 - Create a new public list, visit:
     /cgi-bin/koha/virtualshelves/shelves.pl
 3 - Click "New list" enter name, set public -> public
 4 - Click "Add items", enter 112\n113\n114 (new line for each), in "Biblio numbers"
 5 - Notice that all added biblios have quite a few MARC fields
 6 - Go to packages, visit:
     /cgi-bin/koha/erm/eholdings/local/packages
 7 - Create a new package, add a name and hit 'Submit'
 8 - Go to titles, visit:
     /cgi-bin/koha/erm/eholdings/local/titles
 9 - Click "import from list"
10 - Pick the package created in 7)
11 - On the row of the list created in 2), click "Import"
12 - Go back to the list, visit:
     /cgi-bin/koha/virtualshelves/shelves.pl?op=view&shelfnumber=1
13 - Notice all the biblios have been stripped of their MARC data, and only title remains.
14 - Go to details page for one of the bibs
15 - Edit -> Replace record via Z39.50
16 - You can search for anything, just make sure to import a mostly full record
17 - Go back to ERM - eHoldings - Local - Titles
18 - Edit the title for the record that was replaced
19 - Save
20 - Go to record details - note the record is gone again
21 - Apply patches
22 - Search the catalog
23 - Check some titles
24 - Add to a new list
25 - repeat 8 - 11 with the new list
26 - View and confirm records are intact
27 - Edit the eholdings title for one of the records, changing the title field
28 - Save and view record details
29 - Confirm record is intact and title updated

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-29 17:36:09 -03:00
Martin Renvoize a5f3815c65
Bug 34287: Add check on public availability endpoint
A quick check for patron equals current user in the public availability
endpoint.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-24 16:43:22 -03:00
Martin Renvoize bc2fa03d5c
Bug 34287: Amend unit test
This patch updates the unit test to confirm that checkout availability
should be restricted to the patron checking the availability options on
the public side.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-24 16:43:22 -03:00
Pedro Amorim fb1c01452d
Bug 35229: Fix DataProviders_spec.ts
The intercept was wrong:
Was intercepting GET instead of POST
Was intercepting /run route intead of /process_SUSHI_response (this naming was updated in the rest of the code but not here)

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-24 16:27:26 -03:00
Matt Blenkinsop e56153c510
Bug 35229: Update cypress tests for usage reports
This patch adds some additional tests for usage reports to improve test coverage.
It also fixes a small error in the reports store - "platforms" v "platform". This was affecting which columns could be selected for platform reports

Test plan:
yarn cypress run
All tests should pass

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-24 16:27:26 -03:00
Marcel de Rooy 757be13211
Bug 35393: Fix Objects.t - filter_by_last_update
Test plan:
Keep awake until just after midnight :)
Run t/db_dependent/Koha/Objects.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-24 08:37:46 -03:00
Jonathan Druart 6a9b6a2e00 Bug 12133: (follow-up) Fix failing tests
Tests were still failing

 #   Failed test 'No tests run for subtest "Test where parameter for SendQueuedMessages"'
 #   at t/db_dependent/Letters.t line 1274.
 [Child patron needs a guarantor]# Looks like your test exited with 11 just after 97.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2023-11-15 12:11:39 +01:00
Emmi Takkinen f7d47ffc81
Bug 12133: Fix failing tests
Tests in erm_users.t and Letters.t failed because when
we mock patrons they receive category where setting
can_be_guarantee is not 0. This triggers error "Child
patron cannot be a guarantor". We also need to mock
syspref "ChildNeedsGuarantor" accordingly.

To test prove t/db_dependent/api/v1/erm_users.t and
t/db_dependent/Letters.t.

Sponsored-by: Koha-Suomi Oy
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-14 10:32:36 -03:00
Nick Clemens 3f01f6cafc Bug 34517: (follow-up) Add test for attribute search field and make cleanup more robust
This patch adds a test to cover the new functionality of searching an attribute not searched by default.

It also moves the addition of objects to the cleanup array right after they are created. Patrons are added to the front of the array to ensure no constraints are violated when deleting. This change ensures that if the tests die before reachign the end, the data generated is still cleaned up.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2023-11-14 08:35:23 +01:00
Nick Clemens 16fcc7a925 Bug 34517: (follow-up) Mark test attribute as searched_by_default
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2023-11-14 08:35:23 +01:00
Kyle M Hall b0c4bc3623
Bug 12133: (QA follow-up) Tidy for qa script
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-10 10:59:42 -03:00
Kyle M Hall 4a3fd23acb
Bug 12133: (QA follow-up) Fix number of tests
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-10 10:59:41 -03:00
Emmi Takkinen d9a989eaf0
Bug 12133: Add requirements for guarantor and guarantee
Add two requirements when registering a new patron:

- A child patron must have a guarantor. This is controlled by
  a new syspref ChildNeedsGuarantor.
- A guarantor cannot be a guarantee.

Test plan:
1. Add a child patron without guarantor or child patron with guarantee
as guarantor succesfully.
2. Apply this patch.
3. Add a child patron as a guarantor.
=> Error is raised.
4. Turn syspref "ChildNeedsGuarantor" ON.
5. Add a child patron without a guarantor and error "Child needs a
guarantor" is raised.
6. Add guarantor. Guarantor can either be existing patron or added with
"Contact" section.
=> Save without errors.

Also prove t/db_dependent/Koha/Patron.t

Sponsored-by: Koha-Suomi Oy
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-10 10:59:40 -03:00
Kyle M Hall 1feeead338
Bug 34868: (QA follow-up) Rename new option, add comments
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-10 10:59:38 -03:00
Kyle M Hall 5788a0f262
Bug 34868: Add ability for SIP2 to distinguish missing item from other lost types
The SIP circulation status specifies that a 12 means an item is lost, and 13 means an item is missing. In Koha, missing items are simply a type of lost item so we never send a 13. This is an important distinction for some SIP based inventory tools. It would be good to be able to specify when lost status means "missing" at the SIP login level.

Test Plan:
1) Apply this patch
2) prove t/db_dependent/SIP/Transaction.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-10 10:59:38 -03:00
Jonathan Druart dbf07b8cd3
Bug 35284: Fix tests
This fix patrons_search.t but other selenium tests certainly need
adjustements

Signed-off-by: David Cook <dcook@prosentient.com.au>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-10 10:59:31 -03:00
David Cook a89aee3723
Bug 35008: (QA follow-up) Add selenium unit tests
This patch addds selenium tests for the ILS-DI feature.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-10 10:59:28 -03:00
Marcel de Rooy d2ace878de
Bug 21431: Add unit test
Test plan:
Run t/db_dependent/Koha/Patrons.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-09 14:50:11 -03:00
Nick Clemens 24b22e61b1
Bug 32986: (follow-up) Unit tests
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 17:59:38 -03:00
Nick Clemens 51ef0f688e
Bug 26916: Adjust unit tests
Signed-off-by: Janusz Kaczmarek <januszop@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 17:52:40 -03:00
Nick Clemens cf70fd27da
Bug 34519: (follow-up) fix QA tool complaints
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 17:52:39 -03:00
Nick Clemens 1bfaa2a5a5
Bug 34519: Unit tests
Signed-off-by: Janusz Kaczmarek <januszop@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 17:52:37 -03:00
Kyle M Hall db19d3f18d
Bug 21284: (QA follow-up) Fix QA script issues
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 11:41:35 -03:00
Kyle M Hall 37c8cf6e34
Bug 21284: (QA follow-up) Rename itemonhold and recordonhold
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 11:41:34 -03:00
Matthias Meusburger d1d5811279
Bug 21284: ILS-DI: Allow GetPatronInfo to tell if a loaned item is on hold by someone else.
This patch adds two new entries in the loans section of GetPatronInfo response:

 - itemonhold: number of holds on this specific item.
 - recordonhold: number of holds on the record.

It allows an ILS-DI client to know if a loaned item is already on hold by someone else, and how many holds there are.

Test plan:
1. Apply the patch.
2. Enable the ILS-DI system preference.
3. Check out an item for a patron and make sure there no other holds at either an item or record level.
4. Check that the new itemonhold and recordonhold entries displayed are equal to zero (example: http://127.0.0.1:8080/cgi-bin/koha/ilsdi.pl?service=GetPatronInfo&patron_id=19&show_contact=0&show_loans=1).
5. Add either a record or item level hold for the record used in step 2.
6. Check that itemonhold and recordonhold values are incremented accordingly.
   Note: a hold at an item level counts as a hold at a record level, but not vice-versa.
7. Run the tests and make sure they pass: prove t/db_dependent/ILSDI_Services.t
8. Sign-off!

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 11:41:34 -03:00
Aleisha Amohia 9e865b9f03
Bug 17617: Unit tests
Signed-off-by: Kelly <kelly@bywatersolutions.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 11:41:26 -03:00
Matthias Meusburger c125aa7ecd
Bug 25814: SIP: Add a message on successful checkin.
Currently, Koha does not return a message on successful SIP checkin.

This patchs adds the show_checkin_message option to SIPconfig.xml, disabled by
default. When enabled, the following message is displayed on SIP checkin:

"Item checked-in: {homebranch|permanent_location} - {location}"

The UseLocationAsAQInSIP system preference is used to determine whether the
homebranch or the permanent location will be used.

Test plan:

 - Perform a successful checkin using SIP
 - Check that the message is in the checkin response (AF field)
 - prove t/db_dependent/SIP/Transaction.t

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Edit (tcohen): tidied the whole subtest.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 11:41:23 -03:00
Katrin Fischer df286452b3
Bug 20755: (QA follow-up) Add unit tests
prove t/db_dependent/Letters.t

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 11:41:20 -03:00
Tomas Cohen Arazi 97b1e6a77d
Bug 35269: Rename `update_item_location` to `location_update_trigger`
This patch renames all occurences of the method.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 09:58:55 -03:00
Katrin Fischer ea8022b0f2
Bug 35218: (QA follow-up) Perltidy and file permissions
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 09:58:55 -03:00
Matt Blenkinsop 6e7059c8a2
Bug 35218: Add unit tests for the counter registry API
This patch adds two unit tests to cover the integration with the Counter Registry API in the Usage Statistics module. This is to prevent regressions caused either by changes to the Koha endpoint, or by changes to the Counter Registry API that might require changes in Koha to handle.

Test plan:
1) prove t/db_dependent/api/v1/erm_counter_registries.t
2) prove t/db_dependent/api/v1/erm_sushi_services.t

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 09:58:54 -03:00
Pedro Amorim 93f75b39ac
Bug 35263: Add selenium tests
Test plan, on k-t-d selenium (ktd --selenium up):
1) Apply just this tests patch
2) Run: prove t/db_dependent/selenium/administration_tasks.t
3) Notice it fails. Apply the other patch. Restart plack
4) Repeat step 2. Notice it passes.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-08 09:58:52 -03:00
Tomas Cohen Arazi 432f8076c2
Bug 21159: Add Koha::Item->update_item_location tests
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:50 -03:00
Tomas Cohen Arazi bb74e21d3f
Bug 21159: Remove redundant mock
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:49 -03:00
Katrin Fischer f534e799ed
Bug 21159: (QA follow-up) Add say to database update, perltidy, fix tests
* Perltidies to pass the QA script
* Adds missing say statement to the database update
* Makes sure the tests pass on a database, where UpdateItemLocaton*
  system preferences are not empty

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:49 -03:00
Alex Buckley 81826a7af7
Bug 21159: Update item location on checkout
This patchset shifts the logic for changing the item location on checkin
(controlled by the UpdateItemLocationOnCheckin system preference) to a
new subroutine in Koha/Items.pm

That subroutine logic is shared with the UpdateItemLocationOnCheckout
system preference.

Test plan:
1. Apply patches, update databases and restart services

2. Set the following system preferences:
- UpdateItemLocationOnCheckin:
FIC: PROC

- UpdateItemLocationOnCheckout:
PROC: FIC

3. Checkout an an item with items.location = 'PROC'. Observe it's
location is changed to 'FIC'

4. Return the item. Observe it's location is changed to 'PROC'

5. Change UpdateItemLocationOnCheckout to:
PROC: _BLANK_

6. Issue the item with items.location = 'PROC' and confirm it's location
is blanked on checkout

7. Issue and return an item with a different location e.g. 'REF' (don't
use 'CART' as this is blanked by bug 14576 on checkout).
Observe the location does not change on issue or return.

8. Run unit tests
sudo koha-shell kohadev
prove t/db_dependent/Circulation/issue.t

Sponsored-by: Toi Ohomai Institute of Technology, New Zealand
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:48 -03:00
Kyle M Hall 4652d31123
Bug 34529: (QA follow-up) Tidy OfflineCirculation.t
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:46 -03:00
Kyle M Hall 681dded5b1
Bug 34529: (QA follow-up) Add unit tests
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:45 -03:00
Katrin Fischer 7e0cd0e211
Bug 27992: (QA follow-up) Perltidy
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:40 -03:00
Lucas Gass f7e2894156
Bug 27992: Unit test
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 11:34:39 -03:00
Marcel de Rooy 0ea2a1c7be
Bug 35215: Add few assumptions in Suggestions.t around emailing
Test plan:
Without this patch, set pref ReplytoDefault or EmailAddressForSuggestions.
Run t/db_dependent/Suggestions.t (FAIL)
Fill branch email and reply for CPL branch.
Run t/db_dependent/Suggestions.t (FAIL: more errors)
Apply patch.
Run t/db_dependent/Suggestions.t (PASS)

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 08:42:48 -03:00
Nick Clemens 3ec73d80e2
Bug 17798: Confirm hold when printing slip from another patron's account
This patch adds a few pieces of information to the print slip button
and makes the code confirm the hold

As we are printing before the confirm, we also add the ability to pass
in the itemnumber to 'ReserveSlip'

This is slightly hacky, however, I don't see another way to allow
printing without an additional page reload.

To test:
 1 - Place a title level hold for patron A, for delivery to library B
 2 - Attempt to checkout an item from the record above to Patron B from
     library A
 3 - You receive an alert about the hold
 4 - Click "Don't check out, confirm hold, and print slip"
 5 - Confirm the slip looks correct and has item info
 6 - Confirm that item is in transit to fill hold
 7 - Revert transit status
 8 - Attempt to checkout the item to Patron B from Library B
 9 - Click "Don't check out, confirm hold, and print slip"
10 - Confirm slip is correct
11 - Confirm item is marked waiting

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-06 08:42:41 -03:00
Emily Lamancusa a3be301e62
Bug 35190: Adjust tests
Test plan:
prove t/db_dependent/Koha/AdditionalField.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-03 14:22:46 -03:00
Martin Renvoize d3df141a0b
Bug 29002: (follow-up) Fix Permissions test
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-03 14:08:43 -03:00
Kyle M Hall ef9d9a006a
Bug 33749: (QA follow-up) Tidy code for qa script
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-11-03 12:08:07 -03:00