Uploaded image for project: 'mod-circulation-storage'
  1. mod-circulation-storage
  2. CIRCSTORE-109

Implement request status "Closed - Pickup expired"

    XMLWordPrintable

Details

    • EPAM-Veg Sprint 9, EPAM-Veg Sprint 10
    • 3
    • Vega
    • Small < 3 days
    • We need to consult Jakub
    • Very Small (VS) < 1 day

    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: marcjohnson 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

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                cboerema Cate Boerema
                cboerema Cate Boerema
                Tania Fersenheim Tania Fersenheim
                Matt Connolly Matt Connolly
                Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases