Skip to content
Snippets Groups Projects
Commit c37220a1 authored by Suneet Bendre's avatar Suneet Bendre
Browse files

Merge branch 'feature/connection' into 'develop'

BDD: Feature/connection

See merge request !3
parents ebdf516f fd94d759
No related branches found
No related tags found
2 merge requests!8Develop,!3BDD: Feature/connection
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.
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.
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
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.
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
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment