[Koha-bugs] [Bug 25408] CanBookBeReserved & CanItemBeReserved should check "opacitemholds" policy

bugzilla-daemon at bugs.koha-community.org bugzilla-daemon at bugs.koha-community.org
Sat May 28 00:04:09 CEST 2022


https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=25408

David Nind <david at davidnind.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|Needs Signoff               |Failed QA
                 CC|                            |david at davidnind.com

--- Comment #74 from David Nind <david at davidnind.com> ---
I'm not sure I understand exactly what is going on, but I have changed the
status to Failed QA after:
- working through the test plan, and 
- working through all the options (Allow, Don't allow, Force) for the OPAC,
staff interface, and ILS-DI.

If I've totally misunderstood what this is about and what is required, please
feel free to change the status back!

Questions:

1. Should the circulation rule "OPAC item level holds" apply for the staff
interface? If it should, then the setting name in the staff interface needs
changing.

2. By API I'm assuming ILS-DI. If it needs testing using the REST API, can you
provide some instructions on how to do this? (I have Postman available + the
RESTer addon for Firefox, but APIs are not something I'm familiar with).

I only tested with a circulation rule of All All - I didn't try different
combinations of libraries, patron types, and item types. I used
koha-testing-docker with the default configuration provided - I didn't change
any system preferences apart from enabling ILS-DI.

Test plan results
~~~~~~~~~~~~~~~~~

Step 1: OPAC (setting = Don't allow) - can't place any holds either at record
level or item level, message for each record is "There are no items that can be
placed on hold."

Step 2: Staff interface (setting = Don't allow) - can still place holds (as
expected), when placing multiple holds from the search don't get to select
item-level holds; when placing holds from the record can select and place item
level holds

Step 4: 
. OPAC (setting = Don't allow) - can't place ANY holds (either record level or
item level), message for is "There are no items that can be placed on hold."
. ILS-DI (setting = Don't allow) -  record level hold placed (as expected),
item level hold NOT placed (as expected), get response
<code>recordHoldsOnly</code>

Step 7: 
. OPAC (setting = Force) - can't place ANY holds (either record level or item
level), message is "This title cannot be requested."
. Staff interface (setting = Force) - no change in behaviour from before the
patch was applied: can still pace a hold when on the record detail page (either
record level hold or item level hold); for records with multiple items and from
search cannot select individual items to place a hold on
. ILS-DI (setting = Force) - record level hold NOT placed (as expected), get
response <code>recordHoldNotAllowed</code>; item level hold place (as expected)

Before patch applied
~~~~~~~~~~~~~~~~~~~~

OPAC
- Before patch applied - single record: all PASS, works as expected for Allow,
Don't allow, and Force
- Before patch applied - multiple records from search, records with one item
and multiple items: all PASS, works as expected for Allow, Don't allow, and
Force

Staff interface
- Didn't expect to work as circulation rule setting is for OPAC
- Force = doesn't work
- With any of the settings for records with multiple items and from search
cannot select individual items to place a hold on

Record level hold using ILS_DI
http://127.0.0.1:8080/cgi-bin/koha/ilsdi.pl?service=HoldTitle&patron_id=49&bib_id=146&request_location=127.0.0.1
- OPAC item level holds = Allow = PASS (hold placed)
- OPAC item level holds = Don't allow = FAIL (hold placed)
- OPAC item level holds = Force = FAIL (hold placed)

Item level hold using ILS_DI
http://127.0.0.1:8080/:8080/cgi-bin/koha/ilsdi.pl?service=HoldItem&patron_id=49&bib_id=146&item_id=315
- OPAC item level holds = Allow = PASS (item level hold placed)
- OPAC item level holds = Don't allow = FAIL (item level hold placed)
- OPAC item level holds = Force = PASS (item level hold placed)

Tests pass: prove t/db_dependent/Reserves.t

After patch applied
~~~~~~~~~~~~~~~~~~~

OPAC
- After patch applied - single record:
  - Allow: can place a record level or item level hold
  - Don't allow: can't place a hold, message is "There are no items that can be
placed on hold."
  - Force: can't place a hold, message is "This title cannot be requested"
- After patch applied - multiple records from search, one record with one item
and two records with multiple items:
  - Allow: can place record level and item level holds
  - Don't allow: can't place any holds, message for all records is "There are
no items that can be placed on hold."
  - Force: can't place any holds, message for all records is "This title cannot
be requested."

Staff interface:
- No change in behaviour from before the patch was applied
- With any of the settings for records with multiple items and from search
cannot select individual items to place a hold on

Record level hold using ILS-DI
http://127.0.0.1:8080/cgi-bin/koha/ilsdi.pl?service=HoldTitle&patron_id=49&bib_id=146&request_location=127.0.0.1
- OPAC item level holds = Allow = PASS (hold placed)
- OPAC item level holds = Don't allow = PASS (hold placed)
- OPAC item level holds = Force = PASS (hold NOT placed, get response
<code>recordHoldNotAllowed</code>)

Item level hold using ILS-DI
http://127.0.0.1:8080/cgi-bin/koha/ilsdi.pl?service=HoldItem&patron_id=49&bib_id=146&item_id=315
- OPAC item level holds = Allow = PASS (item level hold placed)
- OPAC item level holds = Don't allow = PASS (item level hold NOT placed, get
response <code>recordHoldsOnly</code>)
- OPAC item level holds = Force = PASS (item level hold placed)

Tests pass: prove t/db_dependent/Reserves.t

-- 
You are receiving this mail because:
You are watching all bug changes.


More information about the Koha-bugs mailing list