Create Karate tests for Pieces API in cross-tenant envs

Description

Acceptance criterias:

  • Tests should be located in mod-consortia test project that already has all requried setup for cross-tenants communication

  • Scenarios source code can be copied from common single tenant tests, but emphasis should be placed on testing communication with Inventory

  • Gatling performance tests for new scenarios are written

Scenarios:

Orders, order lines and pieces are created in the central tenant, inventory objects should be created in member university or college tenants.

  • Create Piece and related Inventory objects should be created in member tenant

  • Update Piece and related Inventory objects should be update in member tenant

  • Delete Piece and related Inventory objects should be deleted from member tenant

  • Receive piece and related Inventory objects should be updated in member tenant

  • Unreceive piece and related Inventory objects should be update in member tenant

Environment

None

Potential Workaround

None

Confluence content

mentioned on

Checklist

hide

Activity

Show:

Serhii_Nosko July 4, 2024 at 5:29 AM

Implemented in scope of https://github.com/folio-org/folio-integration-tests/pull/1371/files/

Looks good, closing this story.

Saba Zedginidze May 27, 2024 at 12:25 PM
Edited

Copied from

Loading...


The following three operations were modified to include multi-tenant support:

Piece creation

When receivingTenantId is present, all of the following will be applied for the specified tenant:

ShadowInstance is created if:

  • PO Line isPackage is true

  • PO Line isPackage is false and

    • 1) POL has null instanceId or

    • 2) POL resource is null or CreateInventory is None

 

Holding is created if:

  • If Piece has null holdingId and instanceId is not null and Piece format matches with PO Line order format with CreateInventory = InstanceHolding or InstanceHoldingItem:

Missing items are created if:

  • If Piece itemId is null and holdingId is not null and createItem flag is true:


Piece update

When receivingTenantId is present, all of the following will be applied for the specified tenant:

  • Same is applied as Piece Creation, however for Piece that needs to be updated

  • Only if deleteHolding is true, the piece from storage is deleted


Piece delete

When receivingTenantId is present, all of the following will be applied for the specified tenant:

  • Deletes all associated items with status ON_ORDER

  • Deletes associated holding if there are no other pieces or items associated with it as well

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Thunderjet

Release

Ramsons (R2 2024)

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created April 30, 2024 at 10:29 AM
Updated July 4, 2024 at 5:29 AM
Resolved July 4, 2024 at 5:29 AM
TestRail: Cases
TestRail: Runs

Flag notifications