Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Test Case IDT02
Test Case Name

Waiting for PNFReady

Description

Verification if PNF PnP functionality within SO is waiting for PNFReady to be published by PRH.

Test case covers following steps from message flow in 5G - PNF Plug and Play:

  • STEP 16 – SERVICE INSTANTIATION
  • STEP 18 – RESOURCE LEVEL FLOW STEP 20 – PNF A&AI ENTRY MISSING
  • STEP 21 – SUBSCRIBE
  • STEP 22 – RESOURCE LEVEL FLOW (RLF) TERMINATES
ReleaseFrankfurt/Guilin
Preconditions
  1. Created PNF and Service using Test Case T01 (Create and distribute service which contains PNF based on imported VSP )
Testing StepsStepExpected Result
  1. Get created service model in Test Case T01 curl --location --request GET 'https://{worker_ip}:30204/sdc2/rest/v1/catalog/services/serviceName/{service model name}/serviceVersion/1.0' \
    --header 'USER_ID: cs0008' \
    --header 'X-FromAppId: robot-ete' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'Authorization: Basic YmVlcDpib29w'
  2. From response get following parameters
    • service_model_uuid → resp_json.uuid;
    • service_model_invariant_uuid -> resp_json.invariantUUID
    • nf_resource_name -> resp_json.componentInstances[0].name
    • nf_resource_uuid -> resp_json.componentInstances[0].customizationUUID
    • componentName -> resp_json.componentInstances[0].componentName
    • nf_model_invariant_uuid -> resp_json.invariantUUID
    • nf_model_uuid -> resp_json.uuid
    • nf_model_name -> resp_json.name
  3. Get owning entity id:
    curl -k -O --location --request GET 'https://{worker_ip}:30233/aai/v13/business/owning-entities?owning-entity-name=OE-Demonstration' \

    --header 'Content-Type: application/json' \
    --header 'X-FromAppId: dcae-curl' \
    --header 'x-transactionId: 9998' \
    --header 'Accept: application/json' \
    --header 'Authorization: Basic QUFJOkFBSQ==' \
    --data-raw ''

    From response get following parameter:
    • owningEntityId -> resp_json.owning-entity[0].owning-entity-id

  4. Get product family id:

    curl -k -O  --location --request GET 'https://{worker_ip}:30233/aai/v13/service-design-and-creation/services?service-description=gNB' \
    --header 'Content-Type: application/json' \
    --header 'X-FromAppId: dcae-curl' \
    --header 'x-transactionId: 9998' \
    --header 'Accept: application/json' \
    --header 'Authorization: Basic QUFJOkFBSQ==' \--data-raw '

    From response get following parameter:
    • productFamilyId -> resp_json.service[0].service-id

  5. Fill SO_request.json with above paremeters and:
    • owningEntityName=OE-Demonstration
    • full_customer_name=Demonstration
    • platformName=Platform-Demonstration
    • lineOfBusinessName=LOB-Demonstration
    • service=gNB
    • nf_instance_name=<your pnf name - send by pnf>

  6. Send Instantiation request to SO

    curl -k ---location --request POST 'http://{worker_ip}:30277/onap/so/infra/serviceInstantiation/v7/serviceInstances' \
    --header 'Authorization: Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --data-rawd @SO_request.json

  7. Login to so-so-bpmn-infra pod via rke console:
    kubectl exec -it dev-so-so-bpmn-infra-<....> -n onap /bin/sh
    open debug.log
    vi logs/bpmn/debug.log
  8. Navigate to Browse SDC Service Models in left menu
  9. Deploy distributed SDC Service Model for PNF
  10. Fill all mandatory parameters. To "PNF (Correlation) ID" field put correlationId that will be setup in PNF simulator. Press "Confirm" button.
  11. Close " In Progress" pop-up window
  12. Login to so-so-bpmn-infra pod via rancher console:
    kubectl exec -it dev-so-so-bpmn-infra-7584f4f887-p9tmn -n onap /bin/sh
    open debug.log
    vi logs/bpmn/debug.log
  13. Verify AAI entry created by SO service using command:
    curl -X GET -k -H "accept: application/json" -H "Real-Time: true" -H "Content-Type: application/json" -H "X-FromAppId: dcae-curl" -H "x-transactionId: 9998" "https://AAI:AAI@<kubernetes noed ip address>:<aai service port>/aai/v11/network/pnfs/pnf/<correlationID>"
  1. Service model is present
  2. Paremeters are present
  3. Owning Entity ID is presnet
  4. Product Familiy ID is present
  5. SO_request.json is filled accodingly
  6. SO request is send sucesfully.

    Service_instance_id is saved from POST response (example of response: {"requestReferences":{"requestId":"10e2577f-3547-4e66-901d-b7b0c6e1d3ab","instanceId":"10004a65-20c4-44d2-bd27-53544fe99916","requestSelfLink":"http://10.183.42.156:30277/orchestrationRequests/v7/10e2577f-3547-4e66-901d-b7b0c6e1d3ab"}})

  7. In debug log should be presnet following entry:

    Code Block
    2020-08-20T20:59:35.865Z|87f367b7-5d84-47e9-a955-6b2143e8424a|o.o.l.filter.spring.SpringClientPayloadFilter - =======================response end=================================================
    2020-08-20T20:59:35.875Z|87f367b7-5d84-47e9-a955-6b2143e8424a|o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - registering for pnf ready dmaap event for pnf correlation id: test_pnf_name
    2020-08-20T20:59:35.881Z|87f367b7-5d84-47e9-a955-6b2143e8424a|org.onap.so.client.RestClient - RestClientSSL using default SSL context!
    2020-08-20T20:59:35.894Z|87f367b7-5d84-47e9-a955-6b2143e8424a|o.o.logging.filter.base.PayloadLoggingClientFilter - Sending HTTP POST (overridden to PATCH) to:https://aai.onap:8443/aai/v19/network/pnfs/pnf
    /test_pnf_name with request headers:{Authorization=[***REDACTED***], X-RequestID=[87f367b7-5d84-47e9-a955-6b2143e8424a], X-FromAppId=[MSO], X-ONAP-PartnerName=[UNKNOWN], X-HTTP-Method-Override=[PATCH], Ac
    cept=[application/json], X-InvocationID=[a9b7b7c1-4912-4e48-8f3a-df7cd3123a54], X-ECOMP-RequestID=[87f367b7-5d84-47e9-a955-6b2143e8424a], X-TransactionId=[], X-ONAP-RequestID=[87f367b7-5d84-47e9-a955-6b21
    43e8424a], Content-Type=[application/merge-patch+json]}
    2020-08-20T20:59:35.895Z|87f367b7-5d84-47e9-a955-6b2143e8424a|o.o.logging.filter.base.PayloadLoggingClientFilter - {"pnf-id":"f792d78d-7c2c-4858-980b-23968923b3f4","orchestration-status":"Register"}
    
    2020-08-20T20:59:35.982Z|87f367b7-5d84-47e9-a955-6b2143e8424a|o.o.logging.filter.base.PayloadLoggingClientFilter - Response from method:POST (overridden to PATCH) performed on uri:https://aai.onap:8443/aa
    i/v19/network/pnfs/pnf/test_pnf_name has http status code:200 and response headers:{Content-Length=[0], content-type=[application/json], Date=[Thu, 20 Aug 2020 20:59:35 GMT], Strict-Transport-Security=[ma
    x-age=16000000; includeSubDomains; preload;], vertex-id=[254096], X-AAI-TXID=[2-aai-resources-200820-20:59:35:904-22741]}
    2020-08-20T20:59:35.983Z|87f367b7-5d84-47e9-a955-6b2143e8424a|o.o.logging.filter.base.PayloadLoggingClientFilter - Response was returned with an empty entity.
    2020-08-20T20:59:39.896Z||o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - dmaap listener starts listening pnf ready dmaap topic
    2020-08-20T20:59:54.485Z||o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - dmaap listener starts listening pnf ready dmaap topic
    2020-08-20T21:00:09.016Z||o.o.s.b.i.pnf.dmaap.PnfEventReadyDmaapClient - dmaap listener starts listening pnf ready dmaap topic
    
    


Actual Results

Correct entry is present in AAI. Entry contains pnf-name  equal to correlationID.

SO service is waiting for PNFReady to be published by PRH

Conclusion (Pass/Fail)
Testing Lab
Tester NameKrzysztof Kuzmicki

...