diff --git a/features/connection/PCMConnection.feature b/features/connection/PCMConnection.feature new file mode 100644 index 0000000000000000000000000000000000000000..f4c5bca28c145345f5ebb302cffc7b796023d193 --- /dev/null +++ b/features/connection/PCMConnection.feature @@ -0,0 +1,29 @@ + As a PCM user, + I want to register with an organization + So that I can leverage GAIA-X ecosystem + + Scenario: I want to become a member of an organization (a GAIA-X Participant) + Given PCM Application should be configureameter alias set to 'member') and sends to PCM register email address. + When PCM Application scans the provided d on the user device. + # src/connections/controller/controller.ts-> Rest API POST METHOD -> NAME 'invitation-url' + And OCM admin generates QR code ( with parQR code. + Then Pairwise DID and ver key is exchanged between the agents. + And the Connection is established between the PCM aries agent and organization aries agent. + # Webhook call on topic 'CONNECTION_MANAGER_SERVICE/ConnectionStateChanged' + And connection state moves to complete state. + # Nats call on topic 'PRINCIPAL_MANAGER_SERVICE/connectionCompleteStatus' + And Principal membership credentials are issued. + + Scenario: I want to subscribe to a service of an organization (a GAIA-X Participant) + Given PCM User should be member of an organization. + And OCM admin/portal generates QR code ( with parameter alias set to 'subscriber') and email/display on portal. + # src/connections/controller/controller.ts-> Rest API POST METHOD -> NAME 'invitation-url' + When PCM Application scans the provided QR code. + Then Pairwise DID and ver key is exchanged between the agents. + And the Connection is established between PCM aries agent and organization aries agent. + # Webhook call on topic 'CONNECTION_MANAGER_SERVICE/ConnectionStateChanged' + And connection state moves to complete state. + # Nats call on topic 'PROOF_MANAGER_SERVICE/sendMembershipProofRequest' + And Principal membership verification to make connection trusted. + And OCM admin issues the verifiable credential over a trusted connection. + diff --git a/features/connection/SchedularToDeleteConnection.feature b/features/connection/SchedularToDeleteConnection.feature new file mode 100644 index 0000000000000000000000000000000000000000..31e64837af4d3b8836e1d7305c7cdc8e9538aea3 --- /dev/null +++ b/features/connection/SchedularToDeleteConnection.feature @@ -0,0 +1,11 @@ +Scheduler is running on Background to delete Non-trusted and Non-complete connections. + + Scenario: Delete a Non-complete connection. + When connection does not goes in complete state within 30 minutes + # /src/connections/scheduler/scheduler.service.ts -> expireNonCompleteConnection() + Then connection will get deleted from database. + + Scenario: Delete a Non-trusted connection. + When connection does not goes in trusted state within 30 minutes + # /src/connections/scheduler/scheduler.service.ts -> expireNonTrustedConnection() + Then connection will get deleted from database. diff --git a/features/connection/findByConnectionId.feature b/features/connection/findByConnectionId.feature new file mode 100644 index 0000000000000000000000000000000000000000..02f676b69fb5ed740b7ea525ca59b54fa05fc49f --- /dev/null +++ b/features/connection/findByConnectionId.feature @@ -0,0 +1,20 @@ +Feature: Get connection details By Id + Return the single connection details + + Scenario: Provide valid connection ID + Given The connection ID available on agent database. + # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/getConnectionById' + When provide valid connection ID. + Then should return connection details. + + Scenario: Provide invalid connection ID. + Given The connection ID available. + # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/getConnectionById' + When provide invalid connection ID. + Then should return no data found with satus code 404(Not Found). + + Scenario: Not Provide a connection ID. + Given The connection ID available. + # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/getConnectionById' + When not provide connection ID. + Then should return connection request required Connction ID with satus code 400. \ No newline at end of file diff --git a/features/connection/getConnection.feature b/features/connection/getConnection.feature new file mode 100644 index 0000000000000000000000000000000000000000..522f37f197feb7810a9f007e455c22a98f908b2a --- /dev/null +++ b/features/connection/getConnection.feature @@ -0,0 +1,20 @@ + Get Connection details + Return the list of connections or single connection created on the OCM environment + + Scenario: Connection details by ID. + # src/connections/controller/controller.ts-> Rest API with Get Method -> connections/:connectionId? + When passed valid connection ID. + Then returns connection details. + + Scenario: Connection details. + # src/connections/controller/controller.ts-> Rest API with Get Method -> connections/:connectionId? + When passed valid pageSize and Number of records. + Then returns a list of connection details. + + Scenario: Connection details with status. + # src/connections/controller/controller.ts-> Rest API with Get Method -> connections/:connectionId? + When passed valid pageSize and Number of records. + And status + Then returns a list of connection details with provided status. + + diff --git a/features/connection/makeConnectionTrusted.feature b/features/connection/makeConnectionTrusted.feature new file mode 100644 index 0000000000000000000000000000000000000000..9d88f543f48f06b3773aa26bff4f316ac847c02d --- /dev/null +++ b/features/connection/makeConnectionTrusted.feature @@ -0,0 +1,19 @@ +Feature: Make connection trusted against connection ID. + I want to Update connection status to trusted. + + Scenario: Make connection trusted against connection ID. + Given I have pass connection ID. + # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/makeConnectionTrusted' + When I have pass valid connection ID. + Then should update current connection state to trusted state. + + Scenario: Make connection trusted against connection ID. + Given I have pass connection ID. + # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/makeConnectionTrusted' + When I have pass invalid connection ID. + Then should get http status 404(Not Found). + + Scenario: Make connection trusted against connection ID. + # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/makeConnectionTrusted' + Given I have not pass connection ID. + Then should return connection request required Connction ID with state code 400(Bad request). \ No newline at end of file