Policy R1 Amsterdam Functional Test Cases

Test Case Id

Description

Pre-conditions

Test Steps

Expected Results

Test Case Id

Description

Pre-conditions

Test Steps

Expected Results

1

Perform   healthcheck for the Policy components using Healthcheck API

  •   Drools PDP

  •   XACML PDP

  •   PAP

  •   BRMSGateway

  • Policy docker image ready and policy   components (Drools, XACML, PAP, BRMS Gateway) should be up and running

  • Server and authentication details should   be configured at  $POLICY_HOME/config/feature-healthcheck.properties

API – healthcheck

Method - GET

Endpoint: http://<host>:8081/healthcheck

All the policy components should return health status as “true”

2

Import/Load Use case template for the following use cases (VoLTE,   vCPE, vFW, vDNS)

 Policy components should   be up and running

API – policyEngineImport

Method – POST

Endpoint:

https://<host>:8081/pdp/policyEngineImport

Policy service models should be imported for the specified use   cases. We should be able to create policy from here.

3

Create config Policy for the following use cases

  •   VoLTE

  •   vFW

  •   vDNS

  •   vCPE

 Policy components up and   running

API – CreateConfig

Method – PUT

Endpoint:

https://<host>:8081/Pdp/createPolicy

Config Policy should be created in Policy Engine (PAP)

4

Push Config policy to the PDP Engines for the following use   cases

  •   VoLTE

  •   vFW

  •   vDNS

  •   vCPE

 Policy components up and running

API - pushPolicy  

Method - PUT

Endpoint:

https:// <host>:8081/Pdp/pushPolicy

Config Policy should be pushed to the PDP group

5

Create Operational policy for the following use cases  

  •   VoLTE

  •   vFW

  •   vDNS

  •   vCPE

 Policy components up and running

API - createPolicy  

Method – PUT

Endpoint:

https://<host>:8081/Pdp/createPolicy

Operational Policy should be created in Policy Engine (PAP)

6

Push operational Policy to the PDP Engines for each use case

  •   VoLTE

  •   vFW

  •   vDNS

  •   vCPE

 Policy components up and running

API - pushPolicy  

Method - PUT

Endpoint:

https:// <host>:8081/Pdp/pushPolicy

Operational Policy should be pushed to the PDP group

7

Retrieve the configs for the following use cases

  •   VoLTE

  •   vFW

  •   vDNS

  •   vCPE

Policy components up and running

API – getConfig

Method – POST

Endpoint:

https://<host>:8081/Pdp/getConfig

Both Config and Operational Policies configured for each use   case should be retrieved successfully

8

Simulate DCAE Control loop event for each use case with higher   or lower threshold values

  •   VoLTE

  •   vFW

  •   vDNS

  •   vCPE

  • Policy components up and running

  • Simulator should be available

Invoke the Simulator API to trigger a DCAE control loop event

DCAE event should be triggered to Policy for each use case   depending on the threshold configured

9

Simulate A&AI Response for Use Case vFW







10

Simulate APPC Response for Use Case vFW

  • Policy components up and running

  • Simulator should be available

Invoke APPC simulator API with Policy data or Trigger a DCAE   control loop event for vFW/vCPE

Valid Response from AppC Simulator API

11

Simulate A&AI Response for Use Case vCPE







12

Simulate APPC Response for Use Case vCPE







13

Simulate A&AI Response for Use Case VOLTE







14

Simulate VF-C Response for Use Case VOLTE

  • Policy components up and running

  • Simulator should be available

Invoke VF-C simulator API with Policy data or Trigger a DCAE   control loop event for VOLTE

Valid Response from VF-C Simulator API

15

Simulate SO Response for VDNS

  • Policy components up and running

  • Simulator should be available

Invoke SO simulator API with Policy data or Trigger a DCAE   control loop event for vDNS

Valid Response from SO Simulator API

16

Simulate A&AI Response for VDNS

  • Policy components up and running

  • Simulator should be available

Invoke A&AI simulator API with Policy data or Trigger a DCAE   control loop event for vDNS

Valid Response from A&AI Simulator API


vFirewall Use Case

vFirewall - TCA Configuration Policy Payload
tca_policy: "{ "domain": "measurementsForVfScaling", "metricsPerEventName": [ { "eventName": "vFirewallBroadcastPackets", "controlLoopSchemaType": "VNF", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta", "thresholdValue": 300, "direction": "LESS_OR_EQUAL", "severity": "MAJOR", "closedLoopEventStatus": "ONSET" }, { "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta", "thresholdValue": 700, "direction": "GREATER_OR_EQUAL", "severity": "CRITICAL", "closedLoopEventStatus": "ONSET" } ] } ] }"
vFirewall - Operational Policy
controlLoop: version: 2.0.0 controlLoopName: ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a trigger_policy: unique-policy-id-1-modifyConfig timeout: 1200 abatement: false policies: - id: unique-policy-id-1-modifyConfig name: modify packet gen config description: actor: APPC recipe: ModifyConfig target: # TBD - Cannot be known until instantiation is done resourceID: Eace933104d443b496b8.nodes.heat.vpg type: VNF retry: 0 timeout: 300 success: final_success failure: final_failure failure_timeout: final_failure_timeout failure_retries: final_failure_retries failure_exception: final_failure_exception failure_guard: final_failure_guard
DCAE Control Loop Event (TCA) - vFirewall
{ "closedLoopEventClient": "DCAE_INSTANCE_ID.dcae-tca", "policyVersion": "1.0.0.5", "policyName": "vFirewall", "policyScope": "resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=SampleClosedLoop", "target_type": "VNF", "AAI": { "generic-vnf.vnf-name": "zdfw1fwl01fwl02" }, "closedLoopAlarmStart": 1484855291527925, "closedLoopEventStatus": "ONSET", "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "target": "generic-vnf.vnf-name", "requestID": "8c1b8bd8-06f7-493f-8ed7-daaa4cc481bc", "from": "DCAE" }
AAI vnf-name query
AAI named-query response
APPC request
APPC response


vDNS Use Case

vDNS - TCA Configuration Policy Payload
vDNS - Operational Policy
DCAE Control Loop Event (TCA) - vDNS
AAI named-query request
AAI named-query response
SO request
SO Response



VOLTE Use Case



VOLTE - Operational Policy
DCAE Control Loop Event (HOLMES) - VOLTE
A&AI Call
A&AI Response
VFC request
VFC response



vCPE Use Case



vCPE - TCA Configuration Policy Payload
vCPE Operational Policy
DCAE Control Loop Event (TCA) - vCPE
APPC request
APPC response
DCAE ABATED Control Loop Event