From 43c1e8c7c820bc8004725355a4a5eb0ad519e680 Mon Sep 17 00:00:00 2001 From: jhh Date: Thu, 20 Feb 2020 18:19:36 -0600 Subject: Tosca compliant vFirewall Issue-ID: POLICY-2376 Signed-off-by: jhh Change-Id: I362ebbd941c400a6ffc3e952e66ca2d624afbfdd Signed-off-by: jhh --- .../java/org/onap/policy/controlloop/VfwTest.java | 42 ++++++++++++++-------- .../test/resources/vcpe/tosca-compliant-vcpe.json | 2 +- .../test/resources/vfw/tosca-compliant-vfw.json | 40 +++++++++++++++++++++ 3 files changed, 69 insertions(+), 15 deletions(-) create mode 100644 controlloop/common/controller-usecases/src/test/resources/vfw/tosca-compliant-vfw.json (limited to 'controlloop/common/controller-usecases') diff --git a/controlloop/common/controller-usecases/src/test/java/org/onap/policy/controlloop/VfwTest.java b/controlloop/common/controller-usecases/src/test/java/org/onap/policy/controlloop/VfwTest.java index 202bd3008..3796f0bfb 100644 --- a/controlloop/common/controller-usecases/src/test/java/org/onap/policy/controlloop/VfwTest.java +++ b/controlloop/common/controller-usecases/src/test/java/org/onap/policy/controlloop/VfwTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * ONAP * ================================================================================ - * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -43,7 +43,8 @@ public class VfwTest extends UsecasesBase { /** * VFW Tosca Policy File. */ - private static final String TOSCA_POLICY_VFW = "src/test/resources/vfw/tosca-vfw.json"; + private static final String TOSCA_LEGACY_POLICY_VFW = "src/test/resources/vfw/tosca-vfw.json"; + private static final String TOSCA_COMPLIANT_POLICY_VFW = "src/test/resources/vfw/tosca-compliant-vfw.json"; /* * VFW Use case Messages. @@ -85,8 +86,7 @@ public class VfwTest extends UsecasesBase { /** * Sunny day scenario for the VFW use case. */ - @Test - public void sunnyDay() throws IOException { + private void sunnyDay() throws IOException { /* Inject an ONSET event over the DCAE topic */ injectOnTopic(DCAE_TOPIC, Paths.get(ONSET)); @@ -118,6 +118,30 @@ public class VfwTest extends UsecasesBase { waitForFinalSuccess(policy, policyClMgt); } + /** + * Sunny Day with Legacy Tosca Policy. + */ + @Test + public void sunnyDayLegacy() throws InterruptedException, CoderException, IOException { + assertEquals(0, usecases.getDrools().factCount(USECASES)); + policy = setupPolicy(TOSCA_LEGACY_POLICY_VFW); + assertEquals(2, usecases.getDrools().factCount(USECASES)); + + sunnyDay(); + } + + /** + * Sunny Day with Tosca Compliant Policy. + */ + @Test + public void sunnyDayCompliant() throws InterruptedException, CoderException, IOException { + assertEquals(0, usecases.getDrools().factCount(USECASES)); + policy = setupPolicy(TOSCA_COMPLIANT_POLICY_VFW); + assertEquals(2, usecases.getDrools().factCount(USECASES)); + + sunnyDay(); + } + /** * Observe Topics. */ @@ -146,16 +170,6 @@ public class VfwTest extends UsecasesBase { } } - /** - * Install Policy. - */ - @Before - public void installPolicy() throws IOException, CoderException, InterruptedException { - assertEquals(0, usecases.getDrools().factCount(USECASES)); - policy = setupPolicy(TOSCA_POLICY_VFW); - assertEquals(2, usecases.getDrools().factCount(USECASES)); - } - /** * Uninstall Policy. */ diff --git a/controlloop/common/controller-usecases/src/test/resources/vcpe/tosca-compliant-vcpe.json b/controlloop/common/controller-usecases/src/test/resources/vcpe/tosca-compliant-vcpe.json index c01f6898c..61fb8a648 100644 --- a/controlloop/common/controller-usecases/src/test/resources/vcpe/tosca-compliant-vcpe.json +++ b/controlloop/common/controller-usecases/src/test/resources/vcpe/tosca-compliant-vcpe.json @@ -19,7 +19,7 @@ "actor": "APPC", "operation": "Restart", "target": { - "type": "VM" + "targetType": "VM" } }, "timeout": 1200, diff --git a/controlloop/common/controller-usecases/src/test/resources/vfw/tosca-compliant-vfw.json b/controlloop/common/controller-usecases/src/test/resources/vfw/tosca-compliant-vfw.json new file mode 100644 index 000000000..c96b49c7e --- /dev/null +++ b/controlloop/common/controller-usecases/src/test/resources/vfw/tosca-compliant-vfw.json @@ -0,0 +1,40 @@ +{ + "type": "onap.policies.controlloop.operational.common.Drools", + "type_version": "1.0.0", + "name": "operational.modifyconfig", + "version": "1.0.0", + "metadata": { + "policy-id": "operational.modifyconfig" + }, + "properties": { + "id": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", + "timeout": 60, + "abatement": false, + "trigger": "unique-policy-id-1-modifyConfig", + "operations": [ + { + "id": "unique-policy-id-1-modifyConfig", + "description": "Modify the packet generator", + "operation": { + "actor": "APPC", + "operation": "ModifyConfig", + "target": { + "targetType": "VNF", + "entityIds": { + "resourceID": "bbb3cefd-01c8-413c-9bdd-2b92f9ca3d38" + } + } + }, + "timeout": 300, + "retries": 0, + "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" + } + ], + "controllerName": "usecases" + } +} -- cgit 1.2.3-korg