DCB E2E test scenarios
Lending library (FOLIO) <-> Borrowing_Pickup library (FOLIO)
Main flow:
# | Manual step | Expected Results | |||
---|---|---|---|---|---|
DCB transaction status | Lending library (FOLIO) | Borrowing_Pickup library (FOLIO) | Test cases links | ||
1 | N/A | CREATED |
|
| |
2 | Lending library: Check-in the item using the FOLIO checkin application. | OPEN |
|
| |
3 | Borrowing library: Check-in the item at the destination pickup service point (Item arrived at needed service point.) | AWAITING_PICKUP |
|
| |
4 | Borrowing library: staff loans the item to the patron, using FOLIO checkout application | ITEM_CHECKED_OUT |
|
| |
5 | Borrowing library: Check-in the item (Patron returns the item to the borrowing library) | ITEM_CHECKED_IN |
|
| |
6 | Lending library: Check-in the item (item arrives at the lending library) | CLOSED |
|
Lending library (FOLIO) <-> Pickup library (FOLIO)
Main flow:
# | Manual step | Expected Results | ||||
---|---|---|---|---|---|---|
DCB transaction status | Lending library (FOLIO) | Borrowing library (FOLIO) | Pickup library (FOLIO) | Test Cases Links | ||
1 | N/A | CREATED |
|
|
| |
2 | Lending library: Check-in the item using the FOLIO checkin application. | OPEN |
|
|
| |
3 | Pickup library: Check-in the item at the destination pickup service point (Item arrived at needed service point.) | AWAITING_PICKUP |
|
|
| |
4 | Pickup library: staff loans the item to the patron, using FOLIO checkout application | ITEM_CHECKED_OUT |
|
|
| |
5 | Pickup library: Check-in the item (Patron returns the item to the pickup library) | ITEM_CHECKED_IN |
|
|
| |
6 | Lending library: Check-in the item (item arrives at the lending library) | CLOSED |
|
Cancellation flow
1. DCB request cancellation by FOLIO user.
- FOLIO user cancels DCB request in Lending Library =>
- DCB transaction status changes to CANCELLED,
- DCB propagates Cancelled transaction status to other libraries.
- FOLIO user cancels DCB request in Borrowing Library =>
- DCB transaction status changes to CANCELLED.
- DCB propagates Cancelled transaction status to other libraries.
- FOLIO user cancels DCB request in Borrowing_Pickup Library =>
- DCB transaction status changes to CANCELLED.
- DCB propagates Cancelled transaction status to other libraries.
- FOLIO user cancels DCB request in Pickup Library =>
- DCB transaction status changes to CANCELLED.
- DCB propagates Cancelled transaction status to other libraries.
Library initiator/ DCB transaction status | CREATED > CANCELLED | OPEN > CANCELLED | AWAITING_PICKUP > CANCELLED | ITEM_CHECKED_OUT > CANCELLED | ITEM_CHECKED_IN > CANCELLED | CLOSED > CANCELLED | Test cases links |
Lending library | |||||||
Borrowing library | |||||||
Borrowing_Pickup library | |||||||
Pickup library |
2. Request cancellation initiated by DCB
- When DCB changes transaction status to CANCELLED, then CANCELLED status should be propagated to all libraries-participants of the transaction.
Note: The cancellation request can be applied to DCB transactions that are in the following statuses [CREATED, OPEN, AWAITING_PICKUP]. For the transactions that are in status [ITEM_CHECKED_OUT, ITEM_CHECKED_IN] FOLIO should reject such requests with a "400 Bad request" response.
Additional info: