Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UIREQ-1032, UIREQ-1034, UIREQ-1035 - Request detail view update for Lending, Borrowing and Pickup DCB roles #1118

Merged
merged 8 commits into from
Nov 10, 2023

Conversation

Terala-Priyanka
Copy link
Contributor

@Terala-Priyanka Terala-Priyanka commented Nov 2, 2023

Purpose

Reshare DCB is a feature that allows sharing of assets within consortium.
Folio has primarily 3 roles in this feature - Lending, Borrowing, Pickup
Lending Role

  • Requested item would be a real item (i.e., an item from inventory).
  • Requester would be a virtual patron (user type - DCB)

Borrowing Role

  • Requested item would be a virtual item
  • Requester would be a real patron

Pickup Role

  • Requested item would be a virtual item (i.e., an item from inventory).
  • Requester would be a virtual patron (user type - DCB)

More details of the feature are available at https://wiki.folio.org/display/FOLIJET/DCB+Integration

Approach

  1. Actions menu will display only "cancel request" menu item for all the roles explained above - hence the logic behind this implementation is a check if the request is virtual or item is virtual.
  2. Title and item barcode are available as only text when in case of virtual item.
  3. All virtual items have hardcoded "istanceId" and "holdingsRecordId".
  4. All virtual patrons have their lastname hardcoded to "DcbSystem"

Refs

UIREQ-1032 -[DCB] Request details: Hide all actions except "Cancel Request" in Action menu (Lending library)
UIREQ-1034 - [DCB] Request details: Updates for Action menu and DCB item links (Borrowing library)
UIREQ-1035 - [DCB] Request details: Updates for Action menu and DCB item links (Pickup library)

Screenshots

Two-legged transaction
Lending flow -

Request Status - Open-Not yet filled
Lending-library-Open-Not-Yet-filled

Request Status - Open-In transit
Lending-library-Open-In-transit

Request Status - Open-Awaiting pickup
Lending-library-Open-Awaiting-pickup

Request Status - Closed-Filled
Lending-library-Closed-Filled

Borrowing & Pickup flow -

Request Status - Open-Not yet filled
image

Request Status - Closed-Filled
image

Pre-Merge Checklist

Before merging this PR, please go through the following list and take appropriate actions.

  • I've added appropriate record to the CHANGELOG.md
  • Does this PR meet or exceed the expected quality standards?
    • Code coverage on new code is 80% or greater
    • Duplications on new code is 3% or less
    • There are no major code smells or security issues
  • Does this introduce breaking changes?
    • If any API-related changes - okapi interfaces and permissions are reviewed/changed correspondingly
    • There are no breaking changes in this PR.

If there are breaking changes, please STOP and consider the following:

  • What other modules will these changes impact?
  • Do JIRAs exist to update the impacted modules?
    • If not, please create them
    • Do they contain the appropriate level of detail? Which endpoints/schemas changed, etc.
    • Do they have all they appropriate links to blocked/related issues?
  • Are the JIRAs under active development?
    • If not, contact the project's PO and make sure they're aware of the urgency.
  • Do PRs exist for these changes?
    • If so, have they been approved?

Ideally all of the PRs involved in breaking changes would be merged in the same day to avoid breaking the folio-testing environment. Communication is paramount if that is to be achieved, especially as the number of intermodule and inter-team dependencies increase.

While it's helpful for reviewers to help identify potential problems, ensuring that it's safe to merge is ultimately the responsibility of the PR assignee.

@Terala-Priyanka Terala-Priyanka marked this pull request as draft November 2, 2023 11:52
@Terala-Priyanka Terala-Priyanka self-assigned this Nov 2, 2023
Copy link

github-actions bot commented Nov 2, 2023

Jest Unit Test Statistics

    1 files  ±  0    50 suites  ±0   1m 35s ⏱️ ±0s
606 tests +14  606 ✔️ +14  0 💤 ±0  0 ±0 
607 runs  +14  607 ✔️ +14  0 💤 ±0  0 ±0 

Results for commit 406f90e. ± Comparison against base commit f0497c8.

♻️ This comment has been updated with latest results.

Copy link

github-actions bot commented Nov 2, 2023

BigTest Unit Test Statistics

0 tests  ±0   0 ✔️ ±0   0s ⏱️ ±0s
0 suites ±0   0 💤 ±0 
0 files   ±0   0 ±0 

Results for commit 406f90e. ± Comparison against base commit f0497c8.

♻️ This comment has been updated with latest results.

@Terala-Priyanka Terala-Priyanka requested a review from a team November 7, 2023 09:41
@Terala-Priyanka Terala-Priyanka marked this pull request as ready for review November 7, 2023 09:41
});

it('should not render "Duplicate" button', () => {
it('should not render "Dublicate" button', () => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
it('should not render "Dublicate" button', () => {
it('should not render "Duplicate" button', () => {

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see on the application that the button name is "Duplicate"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right, but you renamed it to duBlicate

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done.

expect(screen.queryByText(labelIds.reorderQueue)).not.toBeInTheDocument();
});

// describe('when request is valid', () => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove commented tests if they are not needed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed.

expect(screen.queryByText(labelIds.reorderQueue)).not.toBeInTheDocument();
});

// describe('when request is valid', () => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed.

value: title,
};

expect(KeyValue).toHaveBeenNthCalledWith(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see checking for a link in this test case actually

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. The test case intends to check that it is a not a link.
  2. line#32 declares title as a mere string, against which the assertion is made.

I think this is sufficient.

@Terala-Priyanka Terala-Priyanka requested review from mariia-aloshyna and a team November 7, 2023 10:41
Copy link

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

100.0% 100.0% Coverage
0.0% 0.0% Duplication

@Terala-Priyanka Terala-Priyanka merged commit 69bdc4b into master Nov 10, 2023
5 checks passed
@Terala-Priyanka Terala-Priyanka deleted the UIREQ-1032 branch November 10, 2023 05:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants