diff options
author | 2024-07-24 21:09:09 +0100 | |
---|---|---|
committer | 2024-07-24 21:09:54 +0100 | |
commit | 257358ffc369e0813bca5fa92b83710e3d97cfee (patch) | |
tree | 3bc494df192dc38fadc2e225cd8b09c88dd4884d /applications/monitoring | |
parent | 66b1f3ead4f08893da0ea50aad25cd4831367b3c (diff) |
Convert unit tests from junit4 to junit5
Issue-ID: POLICY-5094
Change-Id: Id727408a5fd553aa08623a6ede1a56607b760e3f
Signed-off-by: adheli.tavares <adheli.tavares@est.tech>
Diffstat (limited to 'applications/monitoring')
3 files changed, 30 insertions, 285 deletions
diff --git a/applications/monitoring/src/test/java/cucumber/RunCucumberTest.java b/applications/monitoring/src/test/java/cucumber/RunCucumberTest.java deleted file mode 100644 index f0b9d7f5..00000000 --- a/applications/monitoring/src/test/java/cucumber/RunCucumberTest.java +++ /dev/null @@ -1,32 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP - * ================================================================================ - * Copyright (C) 2019 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. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -package cucumber; - -import io.cucumber.junit.Cucumber; -import io.cucumber.junit.CucumberOptions; -import org.junit.runner.RunWith; - -@RunWith(Cucumber.class) -@CucumberOptions() -public class RunCucumberTest { -}
\ No newline at end of file diff --git a/applications/monitoring/src/test/java/cucumber/Stepdefs.java b/applications/monitoring/src/test/java/cucumber/Stepdefs.java deleted file mode 100644 index 0a1d333a..00000000 --- a/applications/monitoring/src/test/java/cucumber/Stepdefs.java +++ /dev/null @@ -1,223 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP - * ================================================================================ - * 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. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -package cucumber; - -import com.att.research.xacml.std.annotations.XACMLAction; -import com.att.research.xacml.std.annotations.XACMLRequest; -import com.att.research.xacml.std.annotations.XACMLResource; -import com.att.research.xacml.std.annotations.XACMLSubject; -import io.cucumber.java.en.Given; -import io.cucumber.java.en.Then; -import io.cucumber.java.en.When; -import org.junit.ClassRule; -import org.junit.rules.TemporaryFolder; - -public class Stepdefs { - - /* - - private static final Logger logger = LoggerFactory.getLogger(Stepdefs.class); - - public static OnapXacmlPdpEngine onapPdpEngine; - public static Properties properties; - public static Map<String, Object> tcaPolicy; - public static Request request; - public static File pathProperties; - public static File pathRootPolicy; - - /** - * Temporary folder where we will store newly created policies. - */ - @ClassRule - public TemporaryFolder policyFolder = new TemporaryFolder(); - - /** - * This is a simple annotation class to simulate - * requests coming in. - */ - @XACMLRequest(ReturnPolicyIdList = true) - public class MyXacmlRequest { - - @XACMLSubject(includeInResults = true) - String onapName = "DCAE"; - - @XACMLResource(includeInResults = true) - String resource = "onap.policies.Monitoring"; - - @XACMLAction() - String action = "configure"; - } - - /** - * Initialization. - */ - @Given("Initialization") - public void initialization() { - /* - // - // Everything initializes upon startup - // - assertThatCode(() -> { - // - // Assume XACML REST Controller loads PDP engine - // - onapPdpEngine = new OnapXacmlPdpEngine(); - // - // Come up with defaults - // - File path = Paths.get("src/test/resources").toFile(); - /* - // try (InputStream is = new FileInputStream("src/test/resources/xacml.properties")) { - // properties = new Properties(); - // properties.load(is); - // onapPdpEngine.initializeEngine(properties); -// } - onapPdpEngine.initialize(path.toPath()); - // - // Store the properties in new path - // - // JUNIT IS CRASHING - THE TEMP FOLDER NOT CREATED --> - //pathProperties = policyFolder.newFile("xacml.properties"); - // - // Store the root policies - // - for (String rootPolicyId : XACMLProperties.getRootPolicyIDs(properties)) { - logger.debug("Root policy id: " + rootPolicyId); - } - - }).doesNotThrowAnyException(); - */ - } - - /** - * Initialization. - */ - @When("Decision Requested") - public void decision_Requested() { - /* - // - // Simulate a request coming in from Xacml REST server - // - assertThatCode(() -> { - request = RequestParser.parseRequest(new MyXacmlRequest()); - }).doesNotThrowAnyException(); - */ - } - - /** - * Initialization. - */ - @Then("Decision Permit {int} Obligations") - public void decision_Permit_Obligations(Integer int1) { - /* - Response response = onapPdpEngine.decision(request); - for (Result result : response.getResults()) { - logger.debug(result.getDecision().toString()); - assertEquals(Decision.PERMIT, result.getDecision()); - assertThat(result.getObligations().size()).isEqualTo(int1); - } - */ - } - - /** - * Initialization. - */ - @When("The application gets new Tosca Policy") - public void the_application_gets_new_Tosca_Policy() { - /* - // - // The Xacml PDP REST controller Would receive this from the PAP - // - // And then parse it looking for Policy Types - // - assertThatCode(() -> { - try (InputStream is = new FileInputStream("src/test/resources/vDNS.policy.input.yaml")) { - Yaml yaml = new Yaml(); - tcaPolicy = yaml.load(is); - // - // Do we test iterating and determining if supported? - // - - } - }).doesNotThrowAnyException(); - */ - } - - /** - * Initialization. - */ - @Then("Load Policy") - public void load_Policy() { - /* - assertThatCode(() -> { - // - // Load the policies - // - List<PolicyType> convertedPolicies = onapPdpEngine.convertPolicies(tcaPolicy); - // - // Store these in temporary folder - // - int id = 1; - List<Path> newReferencedPolicies = new ArrayList<>(); - for (PolicyType convertedPolicy : convertedPolicies) { - // - // I don't think we should use the policy id as the filename - there could - // possibly be duplicates. eg. Not guaranteed to be unique. - // - File file = policyFolder.newFile("policy." + id + convertedPolicy.getPolicyId() + ".xml"); - logger.info("Creating Policy {}", file.getAbsolutePath()); - Path path = XACMLPolicyWriter.writePolicyFile(file.toPath(), convertedPolicy); - // - // Add it to our list - // - newReferencedPolicies.add(path); - } - // - // Now updated the properties - // - Path[] args = new Path[newReferencedPolicies.size()]; - newReferencedPolicies.toArray(args); - XACMLProperties.setXacmlReferencedProperties(properties, args); - // - // Reload the PDP engine - // - onapPdpEngine.initializeEngine(properties); - }).doesNotThrowAnyException(); - */ - } - - /** - * Initialization. - */ - @Then("Save Configuration") - public void save_Configuration() { - /* - assertThatCode(() -> { - // - // Save the configuration - // - onapPdpEngine.storeXacmlProperties(pathProperties.getAbsolutePath()); - }).doesNotThrowAnyException(); - */ - } -} diff --git a/applications/monitoring/src/test/java/org/onap/policy/xacml/pdp/application/monitoring/MonitoringPdpApplicationTest.java b/applications/monitoring/src/test/java/org/onap/policy/xacml/pdp/application/monitoring/MonitoringPdpApplicationTest.java index b4a5579e..9debb6b1 100644 --- a/applications/monitoring/src/test/java/org/onap/policy/xacml/pdp/application/monitoring/MonitoringPdpApplicationTest.java +++ b/applications/monitoring/src/test/java/org/onap/policy/xacml/pdp/application/monitoring/MonitoringPdpApplicationTest.java @@ -3,7 +3,7 @@ * ONAP * ================================================================================ * Copyright (C) 2019-2022 AT&T Intellectual Property. All rights reserved. - * Modifications Copyright (C) 2021 Nordix Foundation. + * Modifications Copyright (C) 2021, 2024 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,18 +27,18 @@ import static org.assertj.core.api.Assertions.assertThat; import com.att.research.xacml.api.Response; import java.io.File; +import java.nio.file.Path; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Properties; import java.util.ServiceLoader; import org.apache.commons.lang3.tuple.Pair; -import org.junit.BeforeClass; -import org.junit.ClassRule; -import org.junit.FixMethodOrder; -import org.junit.Test; -import org.junit.rules.TemporaryFolder; -import org.junit.runners.MethodSorters; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.MethodOrderer; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestMethodOrder; +import org.junit.jupiter.api.io.TempDir; import org.onap.policy.common.utils.coder.CoderException; import org.onap.policy.common.utils.coder.StandardCoder; import org.onap.policy.common.utils.resources.TextFileUtils; @@ -53,8 +53,8 @@ import org.onap.policy.pdp.xacml.xacmltest.TestUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -@FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class MonitoringPdpApplicationTest { +@TestMethodOrder(MethodOrderer.MethodName.class) +class MonitoringPdpApplicationTest { private static final Logger LOGGER = LoggerFactory.getLogger(MonitoringPdpApplicationTest.class); private static final Properties properties = new Properties(); @@ -64,40 +64,40 @@ public class MonitoringPdpApplicationTest { private static final StandardCoder gson = new StandardCoder(); - @ClassRule - public static final TemporaryFolder policyFolder = new TemporaryFolder(); + @TempDir + static Path policyFolder; /** * Copies the xacml.properties and policies files into * temporary folder and loads the service provider saving * instance of provider off for other tests to use. */ - @BeforeClass - public static void setup() throws Exception { + @BeforeAll + static void setup() throws Exception { // // Load Single Decision Request // requestSinglePolicy = gson.decode( - TextFileUtils - .getTextFileAsString("../../main/src/test/resources/decisions/decision.single.input.json"), - DecisionRequest.class); + TextFileUtils + .getTextFileAsString("../../main/src/test/resources/decisions/decision.single.input.json"), + DecisionRequest.class); // Load Single Decision Request // requestPolicyType = gson.decode( - TextFileUtils + TextFileUtils .getTextFileAsString("../../main/src/test/resources/decisions/decision.policytype.input.json"), - DecisionRequest.class); + DecisionRequest.class); // - // Setup our temporary folder + // Set up our temporary folder // - XacmlPolicyUtils.FileCreator myCreator = policyFolder::newFile; + XacmlPolicyUtils.FileCreator myCreator = (String filename) -> policyFolder.resolve(filename).toFile(); File propertiesFile = XacmlPolicyUtils.copyXacmlPropertiesContents("src/test/resources/xacml.properties", properties, myCreator); // // Load XacmlApplicationServiceProvider service // ServiceLoader<XacmlApplicationServiceProvider> applicationLoader = - ServiceLoader.load(XacmlApplicationServiceProvider.class); + ServiceLoader.load(XacmlApplicationServiceProvider.class); // // Look for our class instance and save it // @@ -127,7 +127,7 @@ public class MonitoringPdpApplicationTest { } @Test - public void test1Basics() { + void test1Basics() { // // Make sure there's an application name // @@ -137,17 +137,17 @@ public class MonitoringPdpApplicationTest { // can support the correct policy types. // assertThat(service.canSupportPolicyType( - new ToscaConceptIdentifier("onap.policies.monitoring.tcagen2", "1.0.0"))).isTrue(); + new ToscaConceptIdentifier("onap.policies.monitoring.tcagen2", "1.0.0"))).isTrue(); assertThat(service.canSupportPolicyType( new ToscaConceptIdentifier("onap.policies.monitoring.tcagen2", "2.0.0"))).isTrue(); assertThat(service.canSupportPolicyType( - new ToscaConceptIdentifier( + new ToscaConceptIdentifier( "onap.policies.monitoring.foobar", "1.0.1"))).isTrue(); assertThat(service.canSupportPolicyType( new ToscaConceptIdentifier( "onap.policies.monitoring.foobar", "2.0.1"))).isTrue(); assertThat(service.canSupportPolicyType( - new ToscaConceptIdentifier("onap.foobar", "1.0.0"))).isFalse(); + new ToscaConceptIdentifier("onap.foobar", "1.0.0"))).isFalse(); // // Ensure it supports decisions // @@ -155,7 +155,7 @@ public class MonitoringPdpApplicationTest { } @Test - public void test2NoPolicies() { + void test2NoPolicies() { // // Ask for a decision // @@ -189,28 +189,28 @@ public class MonitoringPdpApplicationTest { } @Test - public void tes3AddvDnsPolicy() throws CoderException, XacmlApplicationException { + void tes3AddvDnsPolicy() throws CoderException, XacmlApplicationException { testAddPolicy("src/test/resources/vDNS.policy.input.yaml", "onap.policies.monitoring.cdap.tca.hi.lo.app", "onap.scaleout.tca"); } @Test - public void tes4AddvFirewall1Policy() throws CoderException, XacmlApplicationException { + void tes4AddvFirewall1Policy() throws CoderException, XacmlApplicationException { testAddPolicy("policies/vFirewall.policy.monitoring.input.tosca.yaml", "onap.policies.monitoring.tcagen2", "onap.vfirewall.tca"); } @Test - public void tes5AddvFirewall2Policy() throws CoderException, XacmlApplicationException { + void tes5AddvFirewall2Policy() throws CoderException, XacmlApplicationException { testAddPolicy("policies/vFirewall.policy.monitoring.input.tosca.v2.yaml", "onap.policies.monitoring.tcagen2", "onap.vfirewall.tca"); } @SuppressWarnings("unchecked") - public void testAddPolicy(String policyResource, String policyType, String policyId) + void testAddPolicy(String policyResource, String policyType, String policyId) throws CoderException, XacmlApplicationException { // // Now load the vDNS Policy - make sure |