Implement request status "Closed - Pickup expired"

Description

Purpose: to implement request status "Closed - Pickup expired"

User story:
As a circ desk worker
I want requested books to only sit on the hold shelf for a limited period of time
So that the hold shelves are not clogged with held books that haven't been picked up

Scenarios

  1. Scenario

    • Given a request with Request status = "Open - Awaiting pickup"

    • When the request's "Hold shelf expiration date" passes

    • Then:

      • The request status should change to "Closed - Pickup expired"

      • The request is removed from the queue for the item by

        • removing it's position

        • re-positioning all other requests in the queue accordingly

      • The item status of the associated item should remain "Awaiting pickup"

      • No edit button or other edit option should appear (closed requests should never be editable)

    • NOTE: and I were discussing whether expiration should happen at the beginning or end of the day for day/week/month periods or if they should expire at a specific time of day like minute/hour periods. I said we should do what's easiest and Marc said, "Treating all of the periods similarly and expiring at a specific date and time is likely easiest, as it means we don't have to involve the respecting time zone work into this area. (We would if we wanted to do beginning or end of the day)."

  2. Scenario

    • Given requested item A with request status "Closed - Pickup expired"

    • When item A is checked in

    • Then check in should behave as it would if the request weren’t present - I will add some test scenarios to elaborate on how that logic should work)

Test Scenarios (to elaborate on scenario 2 above)
This functionality already works, we just need to make sure it still works in this new scenario

  1. Scenario

    • Given a requested Item A with Item status = Awaiting pickup AND Request X is in position 1 of the request queue and Request Y is in position 2 of the request queue

    • When Request X becomes "Closed - Pickup expired" AND Item A is checked in at Service Point 1

    • Then:

      • Item status will change to Awaiting pickup if Request Y has pickup service point Service Point 1

      • Item status will change to In transit if Request Y has pickup service point other than Service Point 1

  2. Scenario

    • Given a requested Item A with Item status = Awaiting pickup AND Request X is in position 1 of the request queue AND there are no other requests in the request queue for that item

    • When Request X becomes "Closed - Pickup expired" AND Item A is checked in at Service Point 1

    • Then:

      • Item status will change to Awaiting pickup Available if Item A's Effective location is related to Service Point 1

      • Item status will change to In transit if Item A's Effective location is not related to Service Point 1

Environment

None

Potential Workaround

None

Checklist

hide

TestRail: Results

Activity

Show:

Cate Boerema March 10, 2019 at 3:58 PM

Just completed testing on this and it works perfectly. Thanks so much , and Vega!

Khalilah Gambrell March 7, 2019 at 9:05 PM

, is it okay to move this story to done?

Cate Boerema March 7, 2019 at 5:10 PM

Can't repro. Must have been user error or someone messing with my test data. Carry on

Kostyantyn Khodarev March 7, 2019 at 2:41 PM


could you give more details about Scenario2 failure?

Khalilah Gambrell March 7, 2019 at 2:27 PM

and , can we move scenario 2 to a new user story? If so, then we can close this user story with what work was done for scenario 1.

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Vega

Fix versions

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs
Created January 19, 2018 at 2:46 PM
Updated October 25, 2019 at 8:33 AM
Resolved March 10, 2019 at 3:58 PM
TestRail: Cases
TestRail: Runs