Uploaded image for project: 'ui-inn-reach'
  1. ui-inn-reach
  2. UIINREACH-17

INN-Reach General Settings: Central Server Connection Configuration Edit Screen

    XMLWordPrintable

    Details

    • Template:
    • Sprint:
      Volaris Sprint 114, Volaris Sprint 115
    • Story Points:
      5
    • Development Team:
      Volaris

      Description

      Purpose:

      In order to integrate with an INN-Reach central server, FOLIO must store a the configurations necessary to connect to and communicate with the central server. This includes the name of the server, an optional description, the agency codes hosted by the FOLIO server (mapped to FOLIO library records), the FOLIO loan type to associate with items borrowed from other local servers in the consortium, the Central server base URL, the API key and secret for authenticating to the central server, and the API key and secret for the central server to use when communicating with FOLIO.

      User story statement(s):

      As a FOLIO administrator with permission to edit INN-Reach central server configurations, I want create, update, or delete a central server configuration INN-Reach settings, so that my FOLIO tenant can participate in the indicated INN-Reach consortium.

      Scenarios:

      1. Scenario
        • Given the interface scenarios described in UIINREACH-11
        • When an existing central server is selected from the list pane
        • Then a detail view pane is displayed (UIINREACH-13)
      2. Scenario
        • Given the detail view pane from the previous scenario
        • When the user selects the action menu and chooses "Edit"
        • Then a full-screen edit form with the same fields as described in UIINREACH-12 is presented, populated based on the existing record
      3. Scenario:
        • Given that the form has been edited by the user
        • When all required fields have valid values
        • Then the "Save & Close" button becomes active
      4. Scenario
        • Given the previous scenario
        • When the user clicks the "Cancel" button or the "X" in the upper-left corner of the screen
        • Then a confirmation modal is presented with "Close without saving" and "Continue editing" buttons
      5. Scenario
        • Given the confirmation modal
        • When the user clicks "Continue editing"
        • Then they are returned to the in-progress form
      6. Scenario
        • Given the confirmation modal
        • When the user clicks "Close without saving"
        • Then the form is dismissed without post and the user is returned to the detail pane view (UIINREACH-13)
      7. Scenario
        • Given the completed form from Scenario 3
        • When the user clicks "Save & close" without changes to the server connection fields
        • Then the form is submitted without additional validation
      8. Scenario
        • Given the completed form from Scenario 3
        • When the Central server address, Central server key, or Central server key values have been modified
        • Then the updated information is validated by attempting to authenticate to the central server (method TBD, either via direct connection from the UI or via a backend API endpoint) as in UIINREACH-12
      9. Scenario
        • Given the previous scenario
        • When the the information is invalid
        • Then an error modal is presented  indicating the error with "Keep editing" and "Close without saving" buttons
      10. Scenario
        • Given the previous scenario
        • When the user clicks "Keep editing"
        • Then they are returned to the in-progress form
      11. Scenario
        • Given Scenario 8
        • When the user chooses "Close without saving"
        • Then they are returned to the list pane
      12. Scenario
        • Given the scenario 7
        • When the provided central server information is valid
        • Then the form is submitted to the backend API (Create: POST, Update: PUT)
      13. Scenario
        • Given the previous scenario
        • When the server returns a 200 response
        • Then a success toast appears with "Central Server configuration [created/updated] successfully" and the user is returned to the list pane (UIINREACH-11) with the new configuration selected with the detail view (UIINREACH-13) displayed
      14. Scenario
        • Given the Scenario 7
        • When the server returns an error response (400/500 error)
        • Then an error toast is displayed with a description of the error
      15. Scenario
        • Given an existing local server key pair and the user generated a new key pair for the local server
        • When the user attempts to save the form
        • Then a modal is presented before any other validation with the following attributes:
          • Title: Update Local Server Key Confirmation
          • Contents: You have updated the Local Server Key/Secret pair. INN-Reach circulation functions will be interrupted until this information is updated by the Central Server administrator. Click “Confirm” to save your changes and download a JSON file with the new key and secret values.
          • Buttons:
            • “Keep editing” (secondary button)
            • “Confirm” (primary)
      16. Scenario
        • Given the previous scenario
        • When the user clicks "Keep editing"
        • Then they are returned to the in-progress form
      17. Scenario
        • Given Scenario 15
        • When the user clicks "Confirm"
        • Then the form is processed as outlined above and a JSON file with the new local server key and secret values is downloaded on success

        TestRail: Results

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                Dmytro_Melnyshyn Dmytro Melnyshyn
                Reporter:
                brookstravis Brooks Travis
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    TestRail: Runs

                      TestRail: Cases