aboutsummaryrefslogtreecommitdiffstats
path: root/src/test/java/org/onap
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/onap')
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/client/CdsServicesTest.java56
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/config/CldsUserJsonDecoderTest.java99
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/config/sdc/SdcSingleControllerConfigurationTest.java108
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/it/AuthorizationControllerItCase.java137
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/it/CldsHealthcheckServiceItCase.java55
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/it/HttpsItCase.java106
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/it/RobotItCase.java131
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/it/config/CldsReferencePropertiesItCase.java64
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/it/config/SdcControllersConfigurationItCase.java88
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/it/sdc/controller/SdcSingleControllerItCase.java152
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseCacheTestItCase.java127
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseTest.java59
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/model/jsontype/JsonTypeDescriptorTest.java95
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/BlueprintParserTest.java208
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/ChainGeneratorTest.java77
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/CsarHandlerTest.java199
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/DictionaryRepositoriesTestItCase.java88
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/ArrayFieldTest.java55
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/ConstraintTest.java106
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateFieldTest.java69
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateManagerTest.java203
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateTest.java69
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaConverterWithDictionarySupportItCase.java147
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementPropertyTest.java79
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementTest.java52
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/util/JsonUtilsTest.java77
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/util/LoggingUtilsTest.java138
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/util/TestObject.java45
-rw-r--r--src/test/java/org/onap/policy/clamp/clds/util/TestObject2.java44
-rw-r--r--src/test/java/org/onap/policy/clamp/flow/FlowLogOperationTest.java102
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/CsarInstallerItCase.java322
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/DcaeComponentTest.java189
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/DeployFlowTestItCase.java321
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/ExternalComponentStateTest.java82
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/LoopControllerTestItCase.java175
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/LoopLogServiceTestItCase.java96
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/LoopRepositoriesItCase.java258
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/LoopServiceTestItCase.java381
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/LoopTemplateLoopElementModelTest.java105
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/LoopTemplatesServiceItCase.java146
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/LoopToJsonTest.java173
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java296
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/PolicyModelServiceItCase.java300
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/ServiceTest.java54
-rw-r--r--src/test/java/org/onap/policy/clamp/loop/deploy/BlueprintInputParametersTest.java125
-rw-r--r--src/test/java/org/onap/policy/clamp/policy/downloader/PolicyEngineControllerTestItCase.java117
-rw-r--r--src/test/java/org/onap/policy/clamp/policy/microservice/MicroServicePayloadTest.java47
-rw-r--r--src/test/java/org/onap/policy/clamp/policy/operational/OperationalPolicyRepresentationBuilderTest.java67
-rw-r--r--src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupAnalyzerTest.java231
-rw-r--r--src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadExceptionTest.java33
-rw-r--r--src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadTest.java75
-rw-r--r--src/test/java/org/onap/policy/clamp/policy/pdpgroup/PoliciesPdpMergerTest.java102
-rw-r--r--src/test/java/org/onap/policy/clamp/tosca/DictionaryServiceItCase.java247
-rw-r--r--src/test/java/org/onap/policy/clamp/util/PassDecoderTest.java55
-rw-r--r--src/test/java/org/onap/policy/clamp/util/SemanticVersioningTest.java91
55 files changed, 0 insertions, 7123 deletions
diff --git a/src/test/java/org/onap/policy/clamp/clds/client/CdsServicesTest.java b/src/test/java/org/onap/policy/clamp/clds/client/CdsServicesTest.java
deleted file mode 100644
index 6e5300e23..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/client/CdsServicesTest.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2020 Huawei Technologies Co., Ltd.
- * ================================================================================
- * 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.
- * ============LICENSE_END=========================================================
- * ================================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.client;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.skyscreamer.jsonassert.JSONAssert;
-
-public class CdsServicesTest {
-
- @Test
- public void testParseCdsListTypeProperties() throws IOException {
- String cdsResponse = ResourceFileUtils
- .getResourceAsString("example/cds-response/vFW-CDS-resource-assignment-workflow.json");
- CdsServices services = new CdsServices();
- JsonObject output = services.parseCdsResponse(cdsResponse);
- JSONAssert.assertEquals(ResourceFileUtils
- .getResourceAsString("example/cds-response/vFW-CDS-resource-assignment-wf-expected-result.json"),
- JsonUtils.GSON.toJson(output), true);
- }
-
- @Test
- public void testParseCdsResponse() throws IOException {
- String cdsResponse = ResourceFileUtils
- .getResourceAsString("example/cds-response/vFW-CDS-modify-config-workflow.json");
- CdsServices services = new CdsServices();
- JsonObject output = services.parseCdsResponse(cdsResponse);
- JSONAssert.assertEquals(ResourceFileUtils
- .getResourceAsString("example/cds-response/vFW-CDS-modify-config-wf-expected-result.json"),
- JsonUtils.GSON.toJson(output), true);
- }
-
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/clds/config/CldsUserJsonDecoderTest.java b/src/test/java/org/onap/policy/clamp/clds/config/CldsUserJsonDecoderTest.java
deleted file mode 100644
index 605ab99ae..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/config/CldsUserJsonDecoderTest.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * Modifications copyright (c) 2018 Nokia
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.config;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import org.junit.Test;
-import org.onap.policy.clamp.authorization.CldsUser;
-import org.onap.policy.clamp.clds.exception.CldsUsersException;
-
-public class CldsUserJsonDecoderTest {
-
- private String user1 = "admin1";
- private String user2 = "admin2";
- private String password = "5f4dcc3b5aa765d61d8327deb882cf99";
- private String[] normalPermissionsArray = { "permission-type-cl|dev|read", "permission-type-cl|dev|update",
- "permission-type-cl-manage|dev|*", "permission-type-filter-vf|dev|*", "permission-type-template|dev|read",
- "permission-type-template|dev|update" };
- private String[] incompletePermissionsArray = { "permission-type-cl|dev|*", "permission-type-cl|dev|*",
- "permission-type-cl-manage|dev|*", "permission-type-filter-vf|dev|*", "permission-type-template|dev|read",
- "permission-type-template|dev|update" };
-
- @Test
- public void testDecodingDoubleUsers() {
-
- // when
- CldsUser[] usersArray = CldsUserJsonDecoder
- .decodeJson(CldsUserJsonDecoderTest.class.getResourceAsStream("/clds/clds-users-two-users.json"));
-
- // then
- assertThat(usersArray).hasSize(2);
- assertThat(usersArray[0]).extracting(CldsUser::getUser, CldsUser::getPassword, CldsUser::getPermissionsString)
- .containsExactly(user1, password, normalPermissionsArray);
-
- assertThat(usersArray[1]).extracting(CldsUser::getUser, CldsUser::getPassword, CldsUser::getPermissionsString)
- .containsExactly(user2, password, normalPermissionsArray);
-
- }
-
- @Test
- public void testDecodingNoPermission() {
- // when
- CldsUser[] usersArray = CldsUserJsonDecoder
- .decodeJson(this.getClass().getResourceAsStream("/clds/clds-users-no-permission.json"));
-
- // then
- assertThat(usersArray).hasSize(1);
- CldsUser user = usersArray[0];
- assertThat(user.getUser()).isEqualTo(user1);
- assertThat(user.getPassword()).isEqualTo(null);
- assertThat(user.getPermissionsString()).isEmpty();
- }
-
- @Test
- public void testDecodingIncompletePermissions() {
-
- // when
- CldsUser[] usersArray = CldsUserJsonDecoder
- .decodeJson(this.getClass().getResourceAsStream("/clds/clds-users-incomplete-permissions.json"));
-
- // then
- assertThat(usersArray).hasSize(1);
- CldsUser user = usersArray[0];
- assertThat(user.getUser()).isEqualTo(user1);
- assertThat(user.getPassword()).isEqualTo(password);
- assertThat(user.getPermissionsString()).isEqualTo(incompletePermissionsArray);
- }
-
- @Test(expected = CldsUsersException.class)
- public void shouldThrowCldsUsersException() {
- // when
- CldsUserJsonDecoder.decodeJson(this.getClass().getResourceAsStream("/clds/clds-parse-exception.json"));
- }
-
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/config/sdc/SdcSingleControllerConfigurationTest.java b/src/test/java/org/onap/policy/clamp/clds/config/sdc/SdcSingleControllerConfigurationTest.java
deleted file mode 100644
index 7390b65ba..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/config/sdc/SdcSingleControllerConfigurationTest.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2017, 2021 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.
- * ============LICENSE_END=========================================================
- * Modifications copyright (c) 2018 Nokia
- * ================================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.config.sdc;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.nio.charset.StandardCharsets;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.exception.sdc.controller.SdcParametersException;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-
-/**
- * This class tests the SDC Controller config.
- */
-public class SdcSingleControllerConfigurationTest {
-
- /**
- * This method loads the SDC controller configuration from a file located in the resource folder.
- *
- * @param fileName file for sdc controller configuration.
- * @param sdcControllerName sdc controller name.
- * @return instance of SdcSingleControllerConfiguration.
- */
- public static SdcSingleControllerConfiguration loadControllerConfiguration(String fileName,
- String sdcControllerName) {
-
- InputStreamReader streamReader = new InputStreamReader(ResourceFileUtils.getResourceAsStream(fileName),
- StandardCharsets.UTF_8);
- JsonObject jsonNode = JsonUtils.GSON.fromJson(streamReader, JsonObject.class);
-
- return new SdcSingleControllerConfiguration(jsonNode, sdcControllerName,
- "classpath:clds/aaf/org.onap.clamp.keyfile");
- }
-
- @Test
- public final void testTheInit() throws SdcParametersException, IOException {
- SdcSingleControllerConfiguration sdcConfig = loadControllerConfiguration("clds/sdc-controller-config-TLS.json",
- "sdc-controller1");
- assertEquals("User", sdcConfig.getUser());
- assertEquals("ThePassword", sdcConfig.getPassword());
- assertEquals("consumerGroup", sdcConfig.getConsumerGroup());
- assertEquals("consumerId", sdcConfig.getConsumerID());
- assertEquals("environmentName", sdcConfig.getEnvironmentName());
- assertEquals("hostname:8080", sdcConfig.getAsdcAddress());
- assertEquals(10, sdcConfig.getPollingInterval());
- assertEquals(30, sdcConfig.getPollingTimeout());
-
- assertThat(SdcSingleControllerConfiguration.SUPPORTED_ARTIFACT_TYPES_LIST)
- .hasSameSizeAs(sdcConfig.getRelevantArtifactTypes());
- assertEquals("ThePassword", sdcConfig.getKeyStorePassword());
- assertTrue(sdcConfig.activateServerTLSAuth());
- assertThat(sdcConfig.getMsgBusAddress()).contains("localhost");
- }
-
- @Test(expected = SdcParametersException.class)
- public final void testAllRequiredParameters() throws IOException {
- SdcSingleControllerConfiguration sdcConfig = loadControllerConfiguration("clds/sdc-controller-config-TLS.json",
- "sdc-controller1");
- // No exception should be raised
- sdcConfig.testAllRequiredParameters();
- sdcConfig = loadControllerConfiguration("clds/sdc-controller-config-bad.json", "sdc-controller1");
- fail("Should have raised an exception");
- }
-
- @Test
- public final void testAllRequiredParametersEmptyEncrypted() throws IOException {
- SdcSingleControllerConfiguration sdcConfig = loadControllerConfiguration(
- "clds/sdc-controller-config-empty-encrypted.json", "sdc-controller1");
- sdcConfig.testAllRequiredParameters();
- assertNull(sdcConfig.getKeyStorePassword());
- }
-
- @Test
- public final void testConsumerGroupWithNull() throws IOException {
- SdcSingleControllerConfiguration sdcConfig = loadControllerConfiguration("clds/sdc-controller-config-NULL.json",
- "sdc-controller1");
- assertTrue(sdcConfig.getConsumerGroup() == null);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/it/AuthorizationControllerItCase.java b/src/test/java/org/onap/policy/clamp/clds/it/AuthorizationControllerItCase.java
deleted file mode 100644
index 557a2e96c..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/it/AuthorizationControllerItCase.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * Modifications Copyright (C) 2020 Nordix Foundation.
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.it;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import java.util.Arrays;
-import java.util.Collection;
-import org.apache.camel.Exchange;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.authorization.AuthorizationController;
-import org.onap.policy.clamp.authorization.SecureServicePermission;
-import org.onap.policy.clamp.clds.exception.NotAuthorizedException;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.security.core.Authentication;
-import org.springframework.security.core.GrantedAuthority;
-import org.springframework.security.core.authority.SimpleGrantedAuthority;
-import org.springframework.security.core.context.SecurityContext;
-import org.springframework.security.core.context.SecurityContextHolder;
-import org.springframework.test.context.junit4.SpringRunner;
-
-/**
- * Test CldsDAO calls through CldsModel and CldsEvent. This really test the DB
- * and stored procedures.
- */
-@RunWith(SpringRunner.class)
-@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
-public class AuthorizationControllerItCase {
-
- @Autowired
- private AuthorizationController auth;
-
- private static SecurityContext sc = SecurityContextHolder.getContext();
-
- /**
- * Setup the variable before the tests execution.
- */
- @BeforeClass
- public static void setupBefore() {
-
- sc.setAuthentication(new Authentication() {
- @Override
- public Collection<? extends GrantedAuthority> getAuthorities() {
- return Arrays.asList(new SimpleGrantedAuthority(
- new SecureServicePermission("permission-type-cl", "dev", "read").getKey()),
- new SimpleGrantedAuthority(new SecureServicePermission("permission-type-cl-manage", "dev",
- "DEPLOY").getKey()),
- new SimpleGrantedAuthority(new SecureServicePermission("permission-type-filter-vf", "dev",
- "12345-55555-55555-5555").getKey()));
- }
-
- @Override
- public Object getCredentials() {
- return null;
- }
-
- @Override
- public Object getDetails() {
- return null;
- }
-
- @Override
- public Object getPrincipal() {
- return "admin";
- }
-
- @Override
- public boolean isAuthenticated() {
- return true;
- }
-
- @Override
- public void setAuthenticated(boolean authenticatedFlag) throws IllegalArgumentException {
-
- }
-
- @Override
- public String getName() {
- return "admin";
- }
- });
-
- }
-
- @AfterClass
-
- public static void afterCleanup() {
- sc.setAuthentication(null);
- }
-
- @Test
- public void testIsUserPermitted() {
- assertEquals(AuthorizationController.getPrincipalName(sc), "admin");
- assertTrue(auth.isUserPermitted(new SecureServicePermission("permission-type-cl", "dev", "read")));
- assertTrue(auth.isUserPermitted(new SecureServicePermission("permission-type-cl-manage", "dev", "DEPLOY")));
- assertTrue(auth.isUserPermitted(
- new SecureServicePermission("permission-type-filter-vf", "dev", "12345-55555-55555-5555")));
- assertFalse(auth.isUserPermitted(new SecureServicePermission("permission-type-cl", "test", "read")));
- }
-
- @Test(expected = NotAuthorizedException.class)
- public void testIfAuthorizeThrowException() {
- Exchange ex = Mockito.mock(Exchange.class);
- auth.authorize(ex, "cl", "test", "read");
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/it/CldsHealthcheckServiceItCase.java b/src/test/java/org/onap/policy/clamp/clds/it/CldsHealthcheckServiceItCase.java
deleted file mode 100644
index 52da63952..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/it/CldsHealthcheckServiceItCase.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2017-2018 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.
- * ============LICENSE_END============================================
- * ===================================================================
- */
-
-package org.onap.policy.clamp.clds.it;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.model.CldsHealthCheck;
-import org.onap.policy.clamp.clds.service.CldsHealthcheckService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-
-/**
- * Tests HealthCheck Service.
- */
-@RunWith(SpringJUnit4ClassRunner.class)
-@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
-public class CldsHealthcheckServiceItCase {
-
- @Autowired
- private CldsHealthcheckService cldsHealthcheckService;
-
- @Test
- public void testGetHealthCheck() {
- CldsHealthCheck cldsHealthCheck = cldsHealthcheckService.gethealthcheck();
- assertNotNull(cldsHealthCheck);
- assertEquals("UP", cldsHealthCheck.getHealthCheckStatus());
- assertEquals("CLDS-APP", cldsHealthCheck.getHealthCheckComponent());
- assertEquals("OK", cldsHealthCheck.getDescription());
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/it/HttpsItCase.java b/src/test/java/org/onap/policy/clamp/clds/it/HttpsItCase.java
deleted file mode 100644
index 1a4a2ec5f..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/it/HttpsItCase.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2017-2018, 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.it;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import java.io.File;
-import java.nio.charset.Charset;
-import java.security.KeyManagementException;
-import java.security.KeyStoreException;
-import java.security.NoSuchAlgorithmException;
-import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
-import javax.net.ssl.SSLContext;
-import org.apache.commons.io.FileUtils;
-import org.apache.http.conn.ssl.NoopHostnameVerifier;
-import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
-import org.apache.http.conn.ssl.TrustStrategy;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.HttpClients;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.TestPropertySource;
-import org.springframework.test.context.junit4.SpringRunner;
-import org.springframework.web.client.RestTemplate;
-
-/**
- * Test HTTP and HTTPS settings + redirection of HTTP to HTTPS.
- */
-@RunWith(SpringRunner.class)
-@SpringBootTest(webEnvironment = WebEnvironment.DEFINED_PORT)
-@TestPropertySource(locations = "classpath:https/https-test.properties")
-@DirtiesContext
-public class HttpsItCase {
-
- @Value("${server.port}")
- private String httpsPort;
- @Value("${server.http-to-https-redirection.port}")
- private String httpPort;
-
- @Test
- public void testDesignerIndex() throws Exception {
- ResponseEntity<String> entity =
- new RestTemplate().getForEntity("http://localhost:" + this.httpPort + "/swagger.html",
- String.class);
- assertThat(entity.getStatusCode()).isEqualTo(HttpStatus.FOUND);
- ResponseEntity<String> httpsEntity = getRestTemplate()
- .getForEntity("https://localhost:" + this.httpsPort + "/swagger.html", String.class);
- assertThat(httpsEntity.getStatusCode()).isEqualTo(HttpStatus.OK);
- assertThat(httpsEntity.getBody()).contains("Clamp Rest API");
- }
-
- @Test
- public void testSwaggerJson() throws Exception {
- ResponseEntity<String> httpsEntity = getRestTemplate()
- .getForEntity("https://localhost:" + this.httpsPort + "/restservices/clds/api-doc", String.class);
- assertThat(httpsEntity.getStatusCode()).isEqualTo(HttpStatus.OK);
- assertThat(httpsEntity.getBody()).contains("swagger");
- FileUtils.writeStringToFile(new File("docs/swagger/swagger.json"), httpsEntity.getBody(),
- Charset.defaultCharset());
- }
-
- private RestTemplate getRestTemplate() throws KeyStoreException, NoSuchAlgorithmException, KeyManagementException {
- SSLContext sslContext = org.apache.http.ssl.SSLContexts.custom()
- .loadTrustMaterial(null, new TrustStrategy() {
- @Override
- public boolean isTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {
- return true;
- }
- }).build();
- SSLConnectionSocketFactory csf = new SSLConnectionSocketFactory(sslContext, new NoopHostnameVerifier());
- CloseableHttpClient httpClient = HttpClients.custom().setSSLSocketFactory(csf).build();
- HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
- requestFactory.setHttpClient(httpClient);
- RestTemplate restTemplate = new RestTemplate(requestFactory);
- return restTemplate;
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/it/RobotItCase.java b/src/test/java/org/onap/policy/clamp/clds/it/RobotItCase.java
deleted file mode 100644
index 017881ba7..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/it/RobotItCase.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2020-2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.it;
-
-import static org.apache.commons.io.FileUtils.copyInputStreamToFile;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.github.dockerjava.api.DockerClient;
-import com.github.dockerjava.api.command.BuildImageResultCallback;
-import com.github.dockerjava.api.command.CreateContainerResponse;
-import com.github.dockerjava.api.command.InspectContainerResponse;
-import com.github.dockerjava.api.command.LogContainerCmd;
-import com.github.dockerjava.api.model.AccessMode;
-import com.github.dockerjava.api.model.Bind;
-import com.github.dockerjava.api.model.BuildResponseItem;
-import com.github.dockerjava.api.model.Frame;
-import com.github.dockerjava.api.model.Volume;
-import com.github.dockerjava.core.DockerClientBuilder;
-import com.github.dockerjava.core.command.LogContainerResultCallback;
-import com.github.dockerjava.netty.NettyDockerCmdExecFactory;
-import java.io.File;
-import java.util.Objects;
-import org.codehaus.plexus.util.FileUtils;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
-import org.springframework.test.context.TestPropertySource;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
-@TestPropertySource(locations = "classpath:robotframework/robotframework-test.properties")
-@DirtiesContext
-public class RobotItCase {
-
- @Value("${server.port}")
- private String httpPort;
- private static final int TIMEOUT_S = 150;
- protected static final EELFLogger logger = EELFManager.getInstance().getLogger(RobotItCase.class);
-
- @Test
- public void robotTests() throws Exception {
- File robotFolder = new File(getClass().getClassLoader().getResource("robotframework").getFile());
- Volume testsVolume = new Volume("/opt/robotframework/tests");
- DockerClient client = DockerClientBuilder
- .getInstance()
- .withDockerCmdExecFactory(new NettyDockerCmdExecFactory())
- .build();
-
-
- BuildImageResultCallback callback = new BuildImageResultCallback() {
- @Override
- public void onNext(BuildResponseItem item) {
- System.out.println("XXX ITEM " + item);
- super.onNext(item);
- }
- };
-
- String imageId = client.buildImageCmd(robotFolder).exec(callback).awaitImageId();
- CreateContainerResponse createContainerResponse = client.createContainerCmd(imageId)
- .withVolumes(testsVolume)
- .withBinds(
- new Bind(robotFolder.getAbsolutePath() + "/tests/", testsVolume, AccessMode.rw))
- .withEnv("CLAMP_PORT=" + httpPort)
- .withStopTimeout(TIMEOUT_S)
- .withNetworkMode("host")
- .exec();
- String id = createContainerResponse.getId();
- client.startContainerCmd(id).exec();
- InspectContainerResponse exec;
-
- int tries = 0;
- do {
- Thread.sleep(1000);
- exec = client.inspectContainerCmd(id).exec();
- tries++;
- } while (exec.getState().getRunning() && tries < TIMEOUT_S);
- logger.info("RobotFramework result:" + exec.getState());
-
- LogContainerCmd logContainerCmd = client.logContainerCmd(id);
- logContainerCmd.withStdOut(true).withStdErr(true);
- try {
- logContainerCmd.exec(new LogContainerResultCallback() {
- @Override
- public void onNext(Frame item) {
- logger.info(item.toString());
- }
- }).awaitCompletion();
- } catch (InterruptedException e) {
- throw new Exception("Failed to retrieve logs of container " + id, e);
- }
-
- copyInputStreamToFile(client.copyArchiveFromContainerCmd(id, "/opt/robotframework/reports/output.xml").exec(),
- new File("target/robotframework/output.xml"));
- copyInputStreamToFile(client.copyArchiveFromContainerCmd(id, "/opt/robotframework/reports/log.html").exec(),
- new File("target/robotframework/log.html"));
- copyInputStreamToFile(client.copyArchiveFromContainerCmd(id, "/opt/robotframework/reports/report.html").exec(),
- new File("target/robotframework/report.html"));
- client.stopContainerCmd(id);
-
- logger.info("RobotFramework output.xml file: " + FileUtils.fileRead("target/robotframework/output.xml"));
-
- Assert.assertEquals(exec.getState().getError(), 0L,
- Objects.requireNonNull(exec.getState().getExitCodeLong()).longValue());
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/it/config/CldsReferencePropertiesItCase.java b/src/test/java/org/onap/policy/clamp/clds/it/config/CldsReferencePropertiesItCase.java
deleted file mode 100644
index c8b9932cc..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/it/config/CldsReferencePropertiesItCase.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2017-2018 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.it.config;
-
-import static org.junit.Assert.assertEquals;
-
-import java.io.IOException;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.config.ClampProperties;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest
-public class CldsReferencePropertiesItCase {
-
- @Autowired
- private ClampProperties refProp;
-
- /**
- * Test getting a value the properties in string.
- */
- @Test
- public void testGetStringValue() {
- assertEquals("healthcheck", refProp.getStringValue("policy.api.userName"));
- }
-
- /**
- * Test getting prop value as a JSON Node / template.
- *
- * @throws IOException when JSON parsing fails
- */
- @Test
- public void testGetFileContent() throws IOException {
- String users = ResourceFileUtils.getResourceAsString("clds/clds-users.json");
- assertEquals(users, refProp.getFileContent("files.cldsUsers"));
- // Test composite key
- assertEquals(users, refProp.getFileContent("files", "cldsUsers"));
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/it/config/SdcControllersConfigurationItCase.java b/src/test/java/org/onap/policy/clamp/clds/it/config/SdcControllersConfigurationItCase.java
deleted file mode 100644
index 70aeccf59..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/it/config/SdcControllersConfigurationItCase.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2017, 2021 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.
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.clamp.clds.it.config;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import com.google.gson.JsonSyntaxException;
-import java.io.IOException;
-import java.util.Map;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.config.sdc.SdcControllersConfiguration;
-import org.onap.policy.clamp.clds.config.sdc.SdcSingleControllerConfiguration;
-import org.onap.policy.clamp.clds.exception.sdc.controller.SdcParametersException;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.ActiveProfiles;
-import org.springframework.test.context.junit4.SpringRunner;
-import org.springframework.test.util.ReflectionTestUtils;
-
-/**
- * This class tests the SDC Controller config.
- */
-@RunWith(SpringRunner.class)
-@SpringBootTest
-@ActiveProfiles({"clamp-default", "clamp-default-user", "clamp-sdc-controller"})
-public class SdcControllersConfigurationItCase {
-
- @Autowired
- private SdcControllersConfiguration sdcControllersConfiguration;
-
- public final void loadFile(String fileName) throws IOException {
- ReflectionTestUtils.setField(sdcControllersConfiguration, "sdcControllerFile", fileName);
- sdcControllersConfiguration.loadConfiguration();
- }
-
- @Test
- public void testGetAllDefinedControllers() throws IOException {
- loadFile("classpath:clds/sdc-controllers-config.json");
- Map<String, SdcSingleControllerConfiguration> mapResult = sdcControllersConfiguration
- .getAllDefinedControllers();
- assertTrue(mapResult.size() == 2);
- assertEquals("sdc-controller1", mapResult.get("sdc-controller1").getSdcControllerName());
- assertEquals("sdc-controller2", mapResult.get("sdc-controller2").getSdcControllerName());
- }
-
- @Test
- public void testGetSdcSingleControllerConfiguration() throws IOException {
- loadFile("classpath:clds/sdc-controllers-config.json");
- assertEquals("sdc-controller1", sdcControllersConfiguration
- .getSdcSingleControllerConfiguration("sdc-controller1").getSdcControllerName());
- assertEquals("sdc-controller2", sdcControllersConfiguration
- .getSdcSingleControllerConfiguration("sdc-controller2").getSdcControllerName());
- }
-
- @Test(expected = JsonSyntaxException.class)
- public void testBadJsonLoading() throws IOException {
- loadFile("classpath:clds/sdc-controllers-config-bad.json");
- fail("Should have raised an exception");
- }
-
- @Test(expected = SdcParametersException.class)
- public void testMissingParamInJsonLoading() throws IOException {
- loadFile("classpath:clds/sdc-controllers-config-missing-param.json");
- sdcControllersConfiguration.getAllDefinedControllers();
- fail("Should have raised an exception");
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/it/sdc/controller/SdcSingleControllerItCase.java b/src/test/java/org/onap/policy/clamp/clds/it/sdc/controller/SdcSingleControllerItCase.java
deleted file mode 100644
index 787118902..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/it/sdc/controller/SdcSingleControllerItCase.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2018 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.it.sdc.controller;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.mock;
-
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.List;
-import org.assertj.core.api.Assertions;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.clds.config.ClampProperties;
-import org.onap.policy.clamp.clds.config.sdc.SdcSingleControllerConfigurationTest;
-import org.onap.policy.clamp.clds.exception.sdc.controller.SdcControllerException;
-import org.onap.policy.clamp.clds.sdc.controller.SdcSingleController;
-import org.onap.policy.clamp.clds.sdc.controller.SdcSingleControllerStatus;
-import org.onap.policy.clamp.clds.sdc.controller.installer.CsarHandler;
-import org.onap.policy.clamp.loop.CsarInstaller;
-import org.onap.sdc.api.notification.IArtifactInfo;
-import org.onap.sdc.api.notification.INotificationData;
-import org.onap.sdc.api.notification.IResourceInstance;
-import org.slf4j.MDC;
-import org.slf4j.spi.MDCAdapter;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.ActiveProfiles;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest
-@ActiveProfiles({"clamp-default", "clamp-default-user", "clamp-sdc-controller"})
-public class SdcSingleControllerItCase {
-
- private static final String CSAR_ARTIFACT_NAME = "testArtifact.csar";
- private static final String SERVICE_UUID = "serviceUUID";
- private static final String RESOURCE1_UUID = "resource1UUID";
- private static final String RESOURCE1_INSTANCE_NAME = "sim-1802 0";
-
- @Autowired
- private ClampProperties clampProp;
-
- private SdcSingleController sdcSingleController;
-
- private CsarInstaller csarInstaller = mock(CsarInstaller.class);
-
- private INotificationData buildFakeSdcNotification() {
- // BUild what is needed for CSAR
- IArtifactInfo serviceArtifact = mock(IArtifactInfo.class);
- Mockito.when(serviceArtifact.getArtifactType()).thenReturn(CsarHandler.CSAR_TYPE);
- Mockito.when(serviceArtifact.getArtifactName()).thenReturn(CSAR_ARTIFACT_NAME);
- List<IArtifactInfo> servicesList = new ArrayList<>();
- servicesList.add(serviceArtifact);
- INotificationData notifData = mock(INotificationData.class);
- Mockito.when(notifData.getServiceArtifacts()).thenReturn(servicesList);
- // Build what is needed for UUID
- Mockito.when(notifData.getServiceInvariantUUID()).thenReturn(SERVICE_UUID);
- // Build fake resource with one artifact BLUEPRINT
- IResourceInstance resource1 = mock(IResourceInstance.class);
- Mockito.when(resource1.getResourceType()).thenReturn("VF");
- Mockito.when(resource1.getResourceInvariantUUID()).thenReturn(RESOURCE1_UUID);
- Mockito.when(resource1.getResourceInstanceName()).thenReturn(RESOURCE1_INSTANCE_NAME);
- // Create a fake artifact for resource
- IArtifactInfo blueprintArtifact = mock(IArtifactInfo.class);
- Mockito.when(blueprintArtifact.getArtifactType()).thenReturn(CsarHandler.BLUEPRINT_TYPE);
- List<IArtifactInfo> artifactsListForResource = new ArrayList<>();
- artifactsListForResource.add(blueprintArtifact);
- Mockito.when(resource1.getArtifacts()).thenReturn(artifactsListForResource);
- List<IResourceInstance> resourcesList = new ArrayList<>();
- resourcesList.add(resource1);
- Mockito.when(notifData.getResources()).thenReturn(resourcesList);
- return notifData;
- }
-
- /**
- * Initialization method.
- */
- @Before
- public void init() {
- sdcSingleController = new SdcSingleController(clampProp, csarInstaller, SdcSingleControllerConfigurationTest
- .loadControllerConfiguration("clds/sdc-controller-config-TLS.json", "sdc-controller1"), null) {
- };
- }
-
- @Test
- public void testTreatNotification() {
- // when
- sdcSingleController.treatNotification(buildFakeSdcNotification());
- // then
- Assertions.assertThat(sdcSingleController.getNbOfNotificationsOngoing()).isEqualTo(0);
- }
-
- @Test
- public void testCloseSdc() throws SdcControllerException {
- // when
- sdcSingleController.closeSdc();
- // then
- assertThat(sdcSingleController.getControllerStatus()).isEqualTo(SdcSingleControllerStatus.STOPPED);
- }
-
- @Test
- public void testActivateCallback() throws InvocationTargetException, IllegalAccessException, NoSuchMethodException,
- InstantiationException, ClassNotFoundException {
- // given
-
- Class<?> innerClass = Class
- .forName("org.onap.policy.clamp.clds.sdc.controller.SdcSingleController$SdcNotificationCallBack");
- Constructor<?> constructor = innerClass.getDeclaredConstructor(SdcSingleController.class,
- SdcSingleController.class);
- constructor.setAccessible(true);
- Object child = constructor.newInstance(sdcSingleController, sdcSingleController);
- Method method = child.getClass().getDeclaredMethod("activateCallback", INotificationData.class);
- method.setAccessible(true);
- MDCAdapter mdcAdapter = MDC.getMDCAdapter();
- // when
- method.invoke(child, buildFakeSdcNotification());
- // then
- assertThat(mdcAdapter.get("ResponseCode")).isEqualTo("0");
- assertThat(mdcAdapter.get("StatusCode")).isEqualTo("COMPLETE");
- assertThat(mdcAdapter.get("ResponseDescription"))
- .isEqualTo("SDC Notification received and processed successfully");
- assertThat(mdcAdapter.get("ClassName")).isEqualTo(child.getClass().getName());
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseCacheTestItCase.java b/src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseCacheTestItCase.java
deleted file mode 100644
index f406e5ed2..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseCacheTestItCase.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.model.dcae;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertEquals;
-
-import java.util.HashSet;
-import java.util.Set;
-import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
-import org.apache.camel.builder.ExchangeBuilder;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.http.HttpStatus;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class DcaeInventoryResponseCacheTestItCase {
-
- public static DcaeInventoryCache inventoryCache = new DcaeInventoryCache();
-
- @Autowired
- CamelContext camelContext;
-
- /**
- * Initialize the responses.
- */
- @BeforeClass
- public static void createExample() {
- DcaeInventoryResponse response1 = new DcaeInventoryResponse();
- response1.setAsdcServiceId("id1");
- response1.setAsdcResourceId("0");
- DcaeInventoryResponse response2 = new DcaeInventoryResponse();
- response2.setAsdcServiceId("id1");
- response2.setAsdcResourceId("1");
- DcaeInventoryResponse response3 = new DcaeInventoryResponse();
- response3.setAsdcServiceId("id1");
- response3.setAsdcResourceId("2");
- DcaeInventoryResponse response4 = new DcaeInventoryResponse();
- response4.setAsdcServiceId("id2");
- response4.setAsdcResourceId("0");
- DcaeInventoryResponse response5 = new DcaeInventoryResponse();
- response5.setAsdcServiceId("id2");
- response5.setAsdcResourceId("1");
-
- inventoryCache.addDcaeInventoryResponse(response1);
- inventoryCache.addDcaeInventoryResponse(response3);
- inventoryCache.addDcaeInventoryResponse(response2);
- inventoryCache.addDcaeInventoryResponse(response4);
- inventoryCache.addDcaeInventoryResponse(response5);
- }
-
- @Test
- public void testGetAllLoopIds() {
- assertThat(inventoryCache.getAllLoopIds().size()).isEqualTo(2);
- }
-
- @Test
- public void testGetAllBlueprintsPerLoopId() {
- int value = 0;
- for (DcaeInventoryResponse inventoryResponse : inventoryCache.getAllBlueprintsPerLoopId("id1")) {
- assertThat(Integer.valueOf(inventoryResponse.getAsdcResourceId())).isEqualTo(value++);
- }
-
- value = 0;
- for (DcaeInventoryResponse inventoryResponse : inventoryCache.getAllBlueprintsPerLoopId("id2")) {
- assertThat(Integer.valueOf(inventoryResponse.getAsdcResourceId())).isEqualTo(value++);
- }
- }
-
- @Test
- public void testDcaeInventoryResponse() {
- Exchange exchange = ExchangeBuilder.anExchange(camelContext).build();
- Exchange exchangeResponse = camelContext.createProducerTemplate()
- .send("direct:get-all-dcae-blueprint-inventory", exchange);
- assertThat(HttpStatus.valueOf((Integer) exchangeResponse.getIn().getHeader(Exchange.HTTP_RESPONSE_CODE))
- .is2xxSuccessful()).isTrue();
- Set<DcaeInventoryResponse> blueprint = inventoryCache.getAllBlueprintsPerLoopId("testAsdcServiceId");
- assertThat(blueprint.size()).isEqualTo(2);
-
- DcaeInventoryResponse response1 = new DcaeInventoryResponse();
- response1.setAsdcResourceId("0");
- response1.setTypeName("testTypeName");
- response1.setAsdcServiceId("testAsdcServiceId");
- response1.setBlueprintTemplate("testBlueprintTemplate");
- response1.setTypeId("testtypeId");
- DcaeInventoryResponse response2 = new DcaeInventoryResponse();
- response2.setAsdcResourceId("1");
- response2.setTypeName("testTypeName2");
- response2.setAsdcServiceId("testAsdcServiceId");
- response2.setBlueprintTemplate("testBlueprintTemplate2");
- response2.setTypeId("testtypeId2");
-
- Set<DcaeInventoryResponse> expectedBlueprint = new HashSet<>();
- expectedBlueprint.add(response1);
- expectedBlueprint.add(response2);
-
- assertEquals(blueprint, expectedBlueprint);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseTest.java b/src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseTest.java
deleted file mode 100644
index a246e0efa..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/model/dcae/DcaeInventoryResponseTest.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.model.dcae;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import java.util.TreeSet;
-import org.junit.Test;
-
-public class DcaeInventoryResponseTest {
-
- @Test
- public void testComparator() {
- DcaeInventoryResponse response1 = new DcaeInventoryResponse();
- response1.setAsdcServiceId("id1");
- response1.setAsdcResourceId("0");
- DcaeInventoryResponse response2 = new DcaeInventoryResponse();
- response2.setAsdcServiceId("id2");
- response2.setAsdcResourceId("1");
- DcaeInventoryResponse response3 = new DcaeInventoryResponse();
- response3.setAsdcServiceId("id3");
- response3.setAsdcResourceId("2");
- DcaeInventoryResponse response4 = new DcaeInventoryResponse();
- response4.setAsdcServiceId("id4");
- response4.setAsdcResourceId("3");
-
- TreeSet<DcaeInventoryResponse> responseSet = new TreeSet<>();
- responseSet.add(response4);
- responseSet.add(response3);
- responseSet.add(response1);
- responseSet.add(response2);
-
- int value = 0;
- for (DcaeInventoryResponse inventoryResponse : responseSet) {
- assertThat(Integer.valueOf(inventoryResponse.getAsdcResourceId()) == value++).isTrue();
- }
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/model/jsontype/JsonTypeDescriptorTest.java b/src/test/java/org/onap/policy/clamp/clds/model/jsontype/JsonTypeDescriptorTest.java
deleted file mode 100644
index 7999709c2..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/model/jsontype/JsonTypeDescriptorTest.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 Samsung. 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.model.jsontype;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonObject;
-import org.hibernate.HibernateException;
-import org.junit.Test;
-import org.onap.policy.clamp.dao.model.jsontype.JsonTypeDescriptor;
-
-public class JsonTypeDescriptorTest {
-
- private JsonTypeDescriptor descriptor = new JsonTypeDescriptor();
-
- @Test
- public void testFromString() {
- JsonObject object = new JsonObject();
- object.addProperty("one", "oneValue");
- JsonObject child = new JsonObject();
- child.addProperty("two", "twoValue");
- object.add("child", child);
-
- JsonObject jsonResult = descriptor.fromString("{\"one\":\"oneValue\",\"child\":{\"two\":\"twoValue\"}}");
-
- assertThat(jsonResult).isEqualTo(object);
- }
-
- @Test
- public void testUnwrap() {
- JsonObject res1 = descriptor.unwrap(null, null, null);
- assertThat(res1).isNull();
-
- JsonObject object = new JsonObject();
- object.addProperty("one", "oneValue");
- JsonObject child = new JsonObject();
- child.addProperty("two", "twoValue");
- object.add("child", child);
- String res2 = descriptor.unwrap(object, String.class, null);
- assertThat(res2.replace("\n", "").replace(" ", ""))
- .isEqualTo("{\"one\":\"oneValue\",\"child\":{\"two\":\"twoValue\"}}");
-
- Object res3 = descriptor.unwrap(object, JsonObject.class, null);
- String res3Str = ((String) res3).replace(" ", "").replace("\\n", "").replace("\\", "")
- .replace("\"{", "{").replace("}\"", "}");
- assertThat(res3Str).isEqualTo("{\"one\":\"oneValue\",\"child\":{\"two\":\"twoValue\"}}");
- }
-
- @Test(expected = HibernateException.class)
- public void testUnwrapExpectationThrown() {
- JsonObject object = new JsonObject();
- object.addProperty("one", "oneValue");
-
- descriptor.unwrap(object, Integer.class, null);
- }
-
- @Test
- public void testWrap() {
- JsonObject res1 = descriptor.wrap(null, null);
- assertThat(res1).isNull();
-
- JsonObject object = new JsonObject();
- object.addProperty("one", "oneValue");
- JsonObject child = new JsonObject();
- child.addProperty("two", "twoValue");
- object.add("child", child);
- JsonObject res2 = descriptor.wrap("{\"one\":\"oneValue\",\"child\":{\"two\":\"twoValue\"}}", null);
- assertThat(res2).isEqualTo(object);
- }
-
- @Test(expected = HibernateException.class)
- public void testWrapExpectationThrown() {
- descriptor.wrap(1, null);
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/BlueprintParserTest.java b/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/BlueprintParserTest.java
deleted file mode 100644
index 085b3d187..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/BlueprintParserTest.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 Nokia Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.sdc.controller.installer;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.Gson;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import org.json.JSONObject;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.exception.sdc.controller.BlueprintParserException;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.yaml.snakeyaml.Yaml;
-
-public class BlueprintParserTest {
- private static final Gson GSON = new Gson();
- private static final String FIRST_APPP = "first_app";
- private static final String SECOND_APPP = "second_app";
- private static final String THIRD_APPP = "third_app";
- private static final String MODEL_TYPE1 = "type1";
- private static final String MODEL_TYPE_TCA = "onap.policies.monitoring.cdap.tca.hi.lo.app";
- private static final String VERSION = "1.0.0";
-
- private static String microServiceTheWholeBlueprintValid;
- private static String newMicroServiceBlueprint;
- private static JsonObject jsonObjectBlueprintInvalid;
- private static JsonObject jsonObjectBlueprintWithoutName;
- private static JsonObject jsonObjectBlueprintWithoutProperties;
- private static JsonObject jsonObjectBlueprintWithoutRelationships;
- private static JsonObject jsonObjectBlueprintValidWithVersion;
-
- /**
- * Method to load Blueprints before all test.
- *
- * @throws IOException In case of issues when opening the files
- */
- @BeforeClass
- public static void loadBlueprints() throws IOException {
- microServiceTheWholeBlueprintValid = ResourceFileUtils
- .getResourceAsString("clds/blueprint-with-microservice-chain.yaml");
-
- newMicroServiceBlueprint = ResourceFileUtils.getResourceAsString("clds/new-microservice.yaml");
-
- String microServiceBlueprintInvalid = ResourceFileUtils
- .getResourceAsString("clds/single-microservice-fragment-invalid.yaml");
- jsonObjectBlueprintInvalid = yamlToJson(microServiceBlueprintInvalid);
- String microServiceBlueprintWithoutName = ResourceFileUtils
- .getResourceAsString("clds/single-microservice-fragment-without-name.yaml");
- jsonObjectBlueprintWithoutName = yamlToJson(microServiceBlueprintWithoutName);
- String microServiceBlueprintWithoutProperties = ResourceFileUtils
- .getResourceAsString("clds/single-microservice-fragment-without-properties.yaml");
- jsonObjectBlueprintWithoutProperties = yamlToJson(microServiceBlueprintWithoutProperties);
- String microServiceBlueprintValidWithVersion = ResourceFileUtils
- .getResourceAsString("clds/single-microservice-fragment-valid-with-version.yaml");
- jsonObjectBlueprintValidWithVersion = yamlToJson(microServiceBlueprintValidWithVersion);
-
- String microServiceBlueprintWithoutRelationships = ResourceFileUtils
- .getResourceAsString("clds/single-microservice-fragment-without-relationships.yaml");
- jsonObjectBlueprintWithoutRelationships = yamlToJson(microServiceBlueprintWithoutRelationships);
-
- }
-
- @Test
- public void getNameShouldReturnDefinedName() {
- final JsonObject jsonObject = jsonObjectBlueprintInvalid;
- String expectedName = jsonObject.get(jsonObject.keySet().iterator().next()).getAsJsonObject().get("properties")
- .getAsJsonObject().get("name").getAsString();
- Entry<String, JsonElement> entry = jsonObject.entrySet().iterator().next();
- String actualName = BlueprintParser.getName(entry);
-
- Assert.assertEquals(expectedName, actualName);
- }
-
- @Test
- public void getNameShouldReturnServiceNameWhenNoNameDefined() {
- final JsonObject jsonObject = jsonObjectBlueprintWithoutName;
-
- String expectedName = jsonObject.keySet().iterator().next();
- Entry<String, JsonElement> entry = jsonObject.entrySet().iterator().next();
- String actualName = BlueprintParser.getName(entry);
-
- Assert.assertEquals(expectedName, actualName);
- }
-
- @Test
- public void getNameShouldReturnServiceNameWhenNoPropertiesDefined() {
- final JsonObject jsonObject = jsonObjectBlueprintWithoutProperties;
-
- String expectedName = jsonObject.keySet().iterator().next();
- Entry<String, JsonElement> entry = jsonObject.entrySet().iterator().next();
- String actualName = BlueprintParser.getName(entry);
-
- Assert.assertEquals(expectedName, actualName);
- }
-
- @Test
- public void getInputShouldReturnInputWhenPresent() {
- final JsonObject jsonObject = jsonObjectBlueprintInvalid;
-
- String expected = FIRST_APPP;
- Entry<String, JsonElement> entry = jsonObject.entrySet().iterator().next();
- String actual = BlueprintParser.getInput(entry);
-
- Assert.assertEquals(expected, actual);
- }
-
- @Test
- public void getInputShouldReturnEmptyStringWhenAbsent() {
- final JsonObject jsonObject = jsonObjectBlueprintWithoutRelationships;
-
- String expected = "";
- Entry<String, JsonElement> entry = jsonObject.entrySet().iterator().next();
- String actual = BlueprintParser.getInput(entry);
-
- Assert.assertEquals(expected, actual);
- }
-
- @Test(expected = BlueprintParserException.class)
- public void getNodeRepresentationFromIncompleteYaml() throws BlueprintParserException {
- BlueprintParser.getNodeRepresentation(jsonObjectBlueprintInvalid.entrySet().iterator().next(),
- jsonObjectBlueprintInvalid, null);
- }
-
- @Test
- public void getNodeRepresentationFromCompleteYamlWithModelVersion() throws BlueprintParserException {
- final JsonObject jsonObject = jsonObjectBlueprintValidWithVersion;
-
- BlueprintMicroService expected = new BlueprintMicroService(SECOND_APPP, MODEL_TYPE1, "", "10.0.0");
- Entry<String, JsonElement> entry = jsonObject.entrySet().iterator().next();
- BlueprintMicroService actual = BlueprintParser.getNodeRepresentation(entry, jsonObject, null);
-
- Assert.assertEquals(expected, actual);
- }
-
- @Test
- public void getMicroServicesFromBlueprintTest() throws BlueprintParserException {
- BlueprintMicroService thirdApp = new BlueprintMicroService(THIRD_APPP, MODEL_TYPE_TCA, SECOND_APPP, VERSION);
- BlueprintMicroService firstApp = new BlueprintMicroService(FIRST_APPP, MODEL_TYPE_TCA, "", VERSION);
- BlueprintMicroService secondApp = new BlueprintMicroService(SECOND_APPP, MODEL_TYPE_TCA, FIRST_APPP, VERSION);
-
- Set<BlueprintMicroService> expected = new HashSet<>(Arrays.asList(firstApp, secondApp, thirdApp));
- Set<BlueprintMicroService> actual = BlueprintParser.getMicroServices(microServiceTheWholeBlueprintValid);
-
- Assert.assertEquals(expected, actual);
- }
-
- @Test
- public void fallBackToOneMicroServiceTcaTest() {
- BlueprintMicroService tcaMs = new BlueprintMicroService(BlueprintParser.TCA,
- "onap.policies.monitoring.cdap.tca.hi.lo.app", "", VERSION);
- List<BlueprintMicroService> expected = Collections.singletonList(tcaMs);
- List<BlueprintMicroService> actual = BlueprintParser.fallbackToOneMicroService();
-
- Assert.assertEquals(expected, actual);
- }
-
- @Test
- public void newMicroServiceTest() throws BlueprintParserException {
- List<BlueprintMicroService> microServicesChain = new ChainGenerator()
- .getChainOfMicroServices(BlueprintParser.getMicroServices(newMicroServiceBlueprint));
- if (microServicesChain.isEmpty()) {
- microServicesChain = BlueprintParser.fallbackToOneMicroService();
- }
- assertThat(microServicesChain.size()).isEqualTo(1);
- assertThat(microServicesChain.get(0).getName()).isEqualTo("pmsh");
- }
-
- private static JsonObject yamlToJson(String yamlString) {
- Yaml yaml = new Yaml();
- Map<String, Object> map = yaml.load(yamlString);
- JSONObject jsonObject = new JSONObject(map);
- return GSON.fromJson(jsonObject.toString(), JsonObject.class);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/ChainGeneratorTest.java b/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/ChainGeneratorTest.java
deleted file mode 100644
index d7a3b3823..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/ChainGeneratorTest.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 Nokia 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.sdc.controller.installer;
-
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class ChainGeneratorTest {
- private static final String FIRST_APPP = "first_app";
- private static final String SECOND_APPP = "second_app";
- private static final String THIRD_APPP = "third_app";
- private static final String FOURTH_APPP = "fourth_app";
- private static final String DEFAULT_VERSION = "1.0.0";
-
- @Test
- public void getChainOfMicroServicesTest() {
- BlueprintMicroService ms1 = new BlueprintMicroService(FIRST_APPP, "", "", DEFAULT_VERSION);
- BlueprintMicroService ms2 = new BlueprintMicroService(SECOND_APPP, "", FIRST_APPP, DEFAULT_VERSION);
- BlueprintMicroService ms3 = new BlueprintMicroService(THIRD_APPP, "", SECOND_APPP, DEFAULT_VERSION);
- BlueprintMicroService ms4 = new BlueprintMicroService(FOURTH_APPP, "", THIRD_APPP, DEFAULT_VERSION);
-
- List<BlueprintMicroService> expectedList = Arrays.asList(ms1, ms2, ms3, ms4);
- Set<BlueprintMicroService> inputSet = new HashSet<>(expectedList);
-
- List<BlueprintMicroService> actualList = new ChainGenerator().getChainOfMicroServices(inputSet);
- Assert.assertEquals(expectedList, actualList);
- }
-
- @Test
- public void getChainOfMicroServicesTwiceNoInputTest() {
- BlueprintMicroService ms1 = new BlueprintMicroService(FIRST_APPP, "", "", DEFAULT_VERSION);
- BlueprintMicroService ms2 = new BlueprintMicroService(SECOND_APPP, "", "", DEFAULT_VERSION);
- BlueprintMicroService ms3 = new BlueprintMicroService(THIRD_APPP, "", SECOND_APPP, DEFAULT_VERSION);
- BlueprintMicroService ms4 = new BlueprintMicroService(FOURTH_APPP, "", FIRST_APPP, DEFAULT_VERSION);
-
- Set<BlueprintMicroService> inputSet = new HashSet<>(Arrays.asList(ms1, ms2, ms3, ms4));
- List<BlueprintMicroService> actualList = new ChainGenerator().getChainOfMicroServices(inputSet);
- Assert.assertTrue(actualList.isEmpty());
- }
-
- @Test
- public void getChainOfMicroServicesBranchingTest() {
- BlueprintMicroService ms1 = new BlueprintMicroService(FIRST_APPP, "", "", DEFAULT_VERSION);
- BlueprintMicroService ms2 = new BlueprintMicroService(SECOND_APPP, "", FIRST_APPP, DEFAULT_VERSION);
- BlueprintMicroService ms3 = new BlueprintMicroService(THIRD_APPP, "", FIRST_APPP, DEFAULT_VERSION);
- BlueprintMicroService ms4 = new BlueprintMicroService(FOURTH_APPP, "", FIRST_APPP, DEFAULT_VERSION);
-
- Set<BlueprintMicroService> inputSet = new HashSet<>(Arrays.asList(ms1, ms2, ms3, ms4));
- List<BlueprintMicroService> actualList = new ChainGenerator().getChainOfMicroServices(inputSet);
- Assert.assertTrue(actualList.isEmpty());
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/CsarHandlerTest.java b/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/CsarHandlerTest.java
deleted file mode 100644
index 08e425abf..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/sdc/controller/installer/CsarHandlerTest.java
+++ /dev/null
@@ -1,199 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2018 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.sdc.controller.installer;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.List;
-import org.apache.commons.io.IOUtils;
-import org.junit.Test;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.clds.exception.sdc.controller.CsarHandlerException;
-import org.onap.policy.clamp.clds.exception.sdc.controller.SdcArtifactInstallerException;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.sdc.api.notification.IArtifactInfo;
-import org.onap.sdc.api.notification.INotificationData;
-import org.onap.sdc.api.notification.IResourceInstance;
-import org.onap.sdc.api.results.IDistributionClientDownloadResult;
-import org.onap.sdc.tosca.parser.exceptions.SdcToscaParserException;
-
-public class CsarHandlerTest {
-
- private static final String SDC_FOLDER = "/tmp/csar-handler-tests";
- private static final String CSAR_ARTIFACT_NAME = "testArtifact.csar";
- private static final String SERVICE_UUID = "serviceUUID";
- private static final String RESOURCE1_UUID = "resource1UUID";
- private static final String RESOURCE1_INSTANCE_NAME = "sim-1802 0";
- private static final String RESOURCE1_INSTANCE_NAME_IN_CSAR = "sim18020";
- private static final String BLUEPRINT1_NAME = "FOI.Simfoimap223S0112.event_proc_bp.yaml";
- private static final String BLUEPRINT2_NAME = "FOI.Simfoimap223S0112.event_proc_bp2.yaml";
-
- @Test
- public void testConstructor() throws CsarHandlerException {
- IArtifactInfo serviceArtifact = Mockito.mock(IArtifactInfo.class);
- Mockito.when(serviceArtifact.getArtifactType()).thenReturn(CsarHandler.CSAR_TYPE);
- Mockito.when(serviceArtifact.getArtifactName()).thenReturn(CSAR_ARTIFACT_NAME);
- List<IArtifactInfo> servicesList = new ArrayList<>();
- servicesList.add(serviceArtifact);
- INotificationData notifData = Mockito.mock(INotificationData.class);
- Mockito.when(notifData.getServiceArtifacts()).thenReturn(servicesList);
- CsarHandler csar = new CsarHandler(notifData, "test-controller", SDC_FOLDER);
- assertEquals(SDC_FOLDER + "/test-controller" + "/" + CSAR_ARTIFACT_NAME, csar.getFilePath());
- }
-
- @Test(expected = CsarHandlerException.class)
- public void testFailingConstructor() throws CsarHandlerException {
- INotificationData notifData = Mockito.mock(INotificationData.class);
- Mockito.when(notifData.getServiceArtifacts()).thenReturn(new ArrayList<>());
- new CsarHandler(notifData, "test-controller", "/tmp/csar-handler-tests");
- fail("Exception should have been raised");
- }
-
- private INotificationData buildFakeSdcNotification() {
- // BUild what is needed for CSAR
- IArtifactInfo serviceArtifact = Mockito.mock(IArtifactInfo.class);
- Mockito.when(serviceArtifact.getArtifactType()).thenReturn(CsarHandler.CSAR_TYPE);
- Mockito.when(serviceArtifact.getArtifactName()).thenReturn(CSAR_ARTIFACT_NAME);
- List<IArtifactInfo> servicesList = new ArrayList<>();
- servicesList.add(serviceArtifact);
- INotificationData notifData = Mockito.mock(INotificationData.class);
- Mockito.when(notifData.getServiceArtifacts()).thenReturn(servicesList);
- // Build what is needed for UUID
- Mockito.when(notifData.getServiceInvariantUUID()).thenReturn(SERVICE_UUID);
- // Build fake resource with one artifact BLUEPRINT
- IResourceInstance resource1 = Mockito.mock(IResourceInstance.class);
- Mockito.when(resource1.getResourceType()).thenReturn("VF");
- Mockito.when(resource1.getResourceInvariantUUID()).thenReturn(RESOURCE1_UUID);
- Mockito.when(resource1.getResourceInstanceName()).thenReturn(RESOURCE1_INSTANCE_NAME);
- // Create a fake artifact for resource
- IArtifactInfo blueprintArtifact = Mockito.mock(IArtifactInfo.class);
- Mockito.when(blueprintArtifact.getArtifactType()).thenReturn(CsarHandler.BLUEPRINT_TYPE);
- List<IArtifactInfo> artifactsListForResource = new ArrayList<>();
- artifactsListForResource.add(blueprintArtifact);
- Mockito.when(resource1.getArtifacts()).thenReturn(artifactsListForResource);
- List<IResourceInstance> resourcesList = new ArrayList<>();
- resourcesList.add(resource1);
- Mockito.when(notifData.getResources()).thenReturn(resourcesList);
- return notifData;
- }
-
- private IDistributionClientDownloadResult buildFakeSdcResut() throws IOException {
- IDistributionClientDownloadResult resultArtifact = Mockito.mock(IDistributionClientDownloadResult.class);
- Mockito.when(resultArtifact.getArtifactPayload()).thenReturn(
- IOUtils.toByteArray(ResourceFileUtils.getResourceAsStream("example/sdc/service-Simsfoimap0112.csar")));
- return resultArtifact;
- }
-
- private IDistributionClientDownloadResult buildFakeSdcResultWithoutPolicyModel() throws IOException {
- IDistributionClientDownloadResult resultArtifact = Mockito.mock(IDistributionClientDownloadResult.class);
- Mockito.when(resultArtifact.getArtifactPayload()).thenReturn(
- IOUtils.toByteArray(ResourceFileUtils.getResourceAsStream("example/sdc/service-without-policy.csar")));
- return resultArtifact;
- }
-
- @Test
- public void testSave()
- throws SdcArtifactInstallerException, SdcToscaParserException, CsarHandlerException, IOException {
- CsarHandler csar = new CsarHandler(buildFakeSdcNotification(), "test-controller", "/tmp/csar-handler-tests");
- // Test the save
- csar.save(buildFakeSdcResut());
- assertTrue((new File(SDC_FOLDER + "/test-controller/" + CSAR_ARTIFACT_NAME)).exists());
- assertEquals(CSAR_ARTIFACT_NAME, csar.getArtifactElement().getArtifactName());
- assertNotNull(csar.getSdcCsarHelper());
- // Test dcaeBlueprint
- String blueprint = csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getDcaeBlueprint();
- assertNotNull(blueprint);
- assertTrue(!blueprint.isEmpty());
- assertTrue(blueprint.contains("DCAE-VES-PM-EVENT-v1"));
- // Test additional properties from Sdc notif
- assertEquals(BLUEPRINT1_NAME, csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getBlueprintArtifactName());
- assertEquals(RESOURCE1_UUID,
- csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getResourceAttached().getResourceInvariantUUID());
- assertEquals(SERVICE_UUID, csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getBlueprintInvariantServiceUuid());
-
- // Just check the second one is there as well
- assertEquals(BLUEPRINT2_NAME, csar.getMapOfBlueprints().get(BLUEPRINT2_NAME).getBlueprintArtifactName());
- blueprint = csar.getMapOfBlueprints().get(BLUEPRINT2_NAME).getDcaeBlueprint();
- assertNotNull(blueprint);
- assertTrue(!blueprint.isEmpty());
- assertTrue(blueprint.contains("DCAE-VES-PM-EVENT-v1"));
- // Do some cleanup
- Path path = Paths.get(SDC_FOLDER + "/test-controller/" + CSAR_ARTIFACT_NAME);
- Files.deleteIfExists(path);
-
- }
-
- @Test
- public void testLoadingOfPolicyModelFromCsar()
- throws CsarHandlerException, IOException, SdcArtifactInstallerException, SdcToscaParserException {
- CsarHandler csar = new CsarHandler(buildFakeSdcNotification(), "test-controller", "/tmp/csar-handler-tests");
- csar.save(buildFakeSdcResut());
- String policyModelYaml = csar.getPolicyModelYaml().get();
- assertTrue(policyModelYaml.contains("tosca_simple_yaml_1_0_0"));
- }
-
- @Test
- public void testLoadingOfNonexistentPolicyModelFromCsar()
- throws CsarHandlerException, IOException, SdcArtifactInstallerException, SdcToscaParserException {
- CsarHandler csar = new CsarHandler(buildFakeSdcNotification(), "test-controller", "/tmp/csar-handler-tests");
- csar.save(buildFakeSdcResultWithoutPolicyModel());
- assertFalse(csar.getPolicyModelYaml().isPresent());
- }
-
- @Test
- public void testDoubleSave()
- throws SdcArtifactInstallerException, SdcToscaParserException, CsarHandlerException, IOException {
- CsarHandler csar = new CsarHandler(buildFakeSdcNotification(), "test-controller", "/tmp/csar-handler-tests");
- // Test the save
- csar.save(buildFakeSdcResut());
- assertTrue((new File(SDC_FOLDER + "/test-controller/" + CSAR_ARTIFACT_NAME)).exists());
- assertEquals(CSAR_ARTIFACT_NAME, csar.getArtifactElement().getArtifactName());
- assertNotNull(csar.getSdcCsarHelper());
- // Test dcaeBlueprint
- String blueprint = csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getDcaeBlueprint();
- assertNotNull(blueprint);
- assertTrue(!blueprint.isEmpty());
- assertTrue(blueprint.contains("DCAE-VES-PM-EVENT-v1"));
- // Test additional properties from Sdc notif
- assertEquals(BLUEPRINT1_NAME, csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getBlueprintArtifactName());
- assertEquals(RESOURCE1_UUID,
- csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getResourceAttached().getResourceInvariantUUID());
- assertEquals(SERVICE_UUID, csar.getMapOfBlueprints().get(BLUEPRINT1_NAME).getBlueprintInvariantServiceUuid());
- Path path = Paths.get(SDC_FOLDER + "/test-controller/" + CSAR_ARTIFACT_NAME);
- // A double save should simply overwrite the existing
- csar.save(buildFakeSdcResut());
- // Do some cleanup
- Files.deleteIfExists(path);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/DictionaryRepositoriesTestItCase.java b/src/test/java/org/onap/policy/clamp/clds/tosca/DictionaryRepositoriesTestItCase.java
deleted file mode 100644
index f70e74cd6..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/DictionaryRepositoriesTestItCase.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import java.util.List;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.tosca.Dictionary;
-import org.onap.policy.clamp.tosca.DictionaryElement;
-import org.onap.policy.clamp.tosca.DictionaryRepository;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.transaction.annotation.Transactional;
-
-@RunWith(SpringJUnit4ClassRunner.class)
-@SpringBootTest(classes = Application.class)
-public class DictionaryRepositoriesTestItCase {
- @Autowired
- private DictionaryRepository dictionaryRepository;
-
- @Test
- @Transactional
- public void crudTest() {
- // Setup
- Dictionary dictionaryTest1 = new Dictionary();
- dictionaryTest1.setName("testDictionary1");
- dictionaryTest1.setSecondLevelDictionary(1);
- dictionaryTest1.setSubDictionaryType("testType");
-
- DictionaryElement element1 = new DictionaryElement();
- element1.setName("element1");
- element1.setShortName("shortName1");
- element1.setType("type1");
- element1.setDescription("description1");
-
- dictionaryTest1.addDictionaryElements(element1);
-
- Dictionary dictionaryTest2 = new Dictionary();
- dictionaryTest2.setName("testDictionary2");
- dictionaryTest2.setSecondLevelDictionary(1);
- dictionaryTest2.setSubDictionaryType("testType");
-
- DictionaryElement element2 = new DictionaryElement();
- element2.setName("element2");
- element2.setShortName("shortName2");
- element2.setSubDictionary("testDictionary1");
- element2.setType("type2");
- element2.setDescription("description2");
-
- dictionaryTest2.addDictionaryElements(element2);
-
- dictionaryRepository.save(dictionaryTest1);
- List<String> res1 = dictionaryRepository.getAllDictionaryNames();
- assertThat(res1.size()).isGreaterThanOrEqualTo(1);
- assertThat(res1).contains("testDictionary1");
-
- dictionaryRepository.save(dictionaryTest2);
- List<String> res2 = dictionaryRepository.getAllDictionaryNames();
- assertThat(res2.size()).isGreaterThanOrEqualTo(2);
- assertThat(res2).contains("testDictionary1");
- assertThat(res2).contains("testDictionary2");
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ArrayFieldTest.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/ArrayFieldTest.java
deleted file mode 100644
index 6f6f5c104..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ArrayFieldTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import com.google.gson.JsonArray;
-import java.io.IOException;
-import java.util.ArrayList;
-import junit.framework.TestCase;
-import org.onap.policy.clamp.clds.tosca.update.elements.ArrayField;
-import org.onap.policy.clamp.clds.tosca.update.elements.ToscaElement;
-import org.onap.policy.clamp.clds.tosca.update.elements.ToscaElementProperty;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateManager;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-
-public class ArrayFieldTest extends TestCase {
-
- /**
- * Test the deploy method.
- *
- * @throws IOException in case of failure
- */
- public void testDeploy() throws IOException {
- JsonTemplateManager jsonTemplateManager = new JsonTemplateManager(ResourceFileUtils.getResourceAsString(
- "tosca/new-converter/sampleOperationalPoliciesEXTENTED.yaml"), ResourceFileUtils.getResourceAsString(
- "clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- ToscaElement toscaElement = jsonTemplateManager.getToscaElements().get("onap.datatype.controlloop.Actor");
- ToscaElementProperty toscaElementProperty = toscaElement.getProperties().get("actor");
- ArrayField arrayParser = new ArrayField((ArrayList<Object>) toscaElementProperty.getItems().get("default"));
- JsonArray toTest = arrayParser.deploy();
- String reference = "[1,\"String\",5.5,true]";
- assertEquals(reference, String.valueOf(toTest));
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ConstraintTest.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/ConstraintTest.java
deleted file mode 100644
index 493ee992c..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ConstraintTest.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.util.ArrayList;
-import junit.framework.TestCase;
-import org.onap.policy.clamp.clds.tosca.update.elements.ToscaElement;
-import org.onap.policy.clamp.clds.tosca.update.elements.ToscaElementProperty;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplate;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateManager;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-
-public class ConstraintTest extends TestCase {
-
- JsonTemplateManager jsonTemplateManager = new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/constraints.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
-
- ToscaElement toscaElement = jsonTemplateManager.getToscaElements().get("onap.datatype.controlloop.Operation");
-
- public ConstraintTest() throws IOException {
- }
-
- /**
- * Test get value array.
- */
- public void testGetValuesArray() {
- ToscaElementProperty toscaElementProperty = toscaElement.getProperties().get("timeout");
- JsonTemplate jsonTemplate = jsonTemplateManager.getJsonSchemaTemplates().get("integer");
- JsonObject resultProcess = new JsonObject();
- toscaElementProperty.addConstraintsAsJson(resultProcess,
- (ArrayList<Object>) toscaElementProperty.getItems().get("constraints"),
- jsonTemplate);
- String reference = "{\"enum\":[3,4,5.5,6,10]}";
- assertEquals(reference, String.valueOf(resultProcess));
- toscaElementProperty = toscaElement.getProperties().get("success");
- jsonTemplate = jsonTemplateManager.getJsonSchemaTemplates().get("string");
- resultProcess = new JsonObject();
- toscaElementProperty.addConstraintsAsJson(resultProcess,
- (ArrayList<Object>) toscaElementProperty.getItems().get("constraints"),
- jsonTemplate);
- reference = "{\"enum\":[\"VALID\",\"TERMINATED\"]}";
- assertEquals(reference, String.valueOf(resultProcess));
- }
-
- /**
- * Test get Specific length.
- */
- public void testGetSpecificLength() {
- //Test for string type, same process for array
- ToscaElementProperty toscaElementProperty = toscaElement.getProperties().get("id");
- JsonTemplate jsonTemplate = jsonTemplateManager.getJsonSchemaTemplates().get("string");
- JsonObject resultProcess = new JsonObject();
- toscaElementProperty.addConstraintsAsJson(resultProcess,
- (ArrayList<Object>) toscaElementProperty.getItems().get("constraints"),
- jsonTemplate);
- int specificLength = 8;
- int toTest = resultProcess.get("minLength").getAsInt();
- assertEquals(specificLength, toTest);
- toTest = resultProcess.get("maxLength").getAsInt();
- assertEquals(specificLength, toTest);
- }
-
- /**
- * Test get limit value.
- */
- public void testGetLimitValue() {
- //Test for array type, same process for string
- ToscaElementProperty toscaElementProperty = toscaElement.getProperties().get("description");
- JsonTemplate jsonTemplate = jsonTemplateManager.getJsonSchemaTemplates().get("array");
- JsonObject resultProcess = new JsonObject();
- toscaElementProperty.addConstraintsAsJson(resultProcess,
- (ArrayList<Object>) toscaElementProperty.getItems().get("constraints"),
- jsonTemplate);
-
- int toTest = resultProcess.get("minItems").getAsInt();
- assertEquals(5, toTest);
- toTest = resultProcess.get("maxItems").getAsInt();
- assertEquals(7, toTest);
- }
-
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateFieldTest.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateFieldTest.java
deleted file mode 100644
index 3eaa0ce51..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateFieldTest.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import junit.framework.TestCase;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateField;
-
-public class JsonTemplateFieldTest extends TestCase {
-
- JsonTemplateField field1 = new JsonTemplateField("type", "testType", true, true);
- JsonTemplateField field2 = new JsonTemplateField("type");
- JsonTemplateField field3 = new JsonTemplateField("type", "testType1", true, true);
- JsonTemplateField field4 = new JsonTemplateField("type", "testType", false, true);
- JsonTemplateField field5 = new JsonTemplateField("type", "testType", true, false);
- JsonTemplateField field6 = new JsonTemplateField("type", "testType", true, true);
-
- /**
- * Test fieldsEqual method.
- */
- public void testFieldsEqualsMethod() {
- assertFalse(JsonTemplateField.fieldsEquals(field1, field3));
- assertFalse(JsonTemplateField.fieldsEquals(field1, field4));
- assertFalse(JsonTemplateField.fieldsEquals(field1, field5));
- assertTrue(JsonTemplateField.fieldsEquals(field1, field6));
- }
-
- /**
- * Test equals method.
- */
- public void testEqualsMethod() {
- assertTrue(field1.equals(field2));
- assertTrue(field1.equals(field3));
- assertTrue(field1.equals(field4));
- assertTrue(field1.equals(field5));
- assertTrue(field1.equals(field6));
- }
-
- /**
- * Test compareWithField method.
- */
- public void testCompareWithFieldMethod() {
- assertFalse(field1.compareWithField(field2));
- assertFalse(field1.compareWithField(field3));
- assertFalse(field1.compareWithField(field4));
- assertFalse(field1.compareWithField(field5));
- assertTrue(field1.equals(field6));
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateManagerTest.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateManagerTest.java
deleted file mode 100644
index 2c8744f33..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateManagerTest.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import junit.framework.TestCase;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplate;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateField;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateManager;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-
-public class JsonTemplateManagerTest extends TestCase {
-
- /**
- * Test the launch translation wit operational policies.
- *
- * @throws IOException In case of failure
- * @throws UnknownComponentException In case of failure
- */
- public void testLaunchTranslationTca() throws IOException, UnknownComponentException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("http-cache/example/policy/api/v1/policytypes/onap"
- + ".policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0/.file"),
- ResourceFileUtils.getResourceAsString(
- "clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- String componentName = "onap.policies.monitoring.cdap.tca.hi.lo.app";
- jsonTemplateManager.getJsonSchemaForPolicyType(componentName, null, null);
- }
-
- /**
- * Test the launch translation wit operational policies.
- *
- * @throws IOException In case of failure
- * @throws UnknownComponentException In case of failure
- */
- public void testLaunchTranslationFrequencyLimiter() throws IOException, UnknownComponentException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("http-cache/example/policy/api/v1/policytypes/onap"
- + ".policies.controlloop.guard.common.FrequencyLimiter/versions/1.0.0/.file"),
- ResourceFileUtils.getResourceAsString(
- "clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- String componentName = "onap.policies.controlloop.guard.common.FrequencyLimiter";
- jsonTemplateManager.getJsonSchemaForPolicyType(componentName, null, null);
- }
-
- /**
- * Test the launch translation wit operational policies.
- *
- * @throws IOException In case of failure
- * @throws UnknownComponentException In case of failure
- */
- public void testLaunchTranslationApex() throws IOException, UnknownComponentException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("http-cache/example/policy/api/v1/policytypes/onap"
- + ".policies.controlloop.operational.common.Apex/versions/1.0.0/.file"),
- ResourceFileUtils.getResourceAsString(
- "clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- String componentName = "onap.policies.controlloop.operational.common.Apex";
- jsonTemplateManager.getJsonSchemaForPolicyType(componentName, null, null);
- }
-
- /**
- * Test the launch translation wit operational policies.
- *
- * @throws IOException In case of failure
- * @throws UnknownComponentException In case of failure
- */
- public void testLaunchTranslationDrools() throws IOException, UnknownComponentException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("http-cache/example/policy/api/v1/policytypes/onap"
- + ".policies.controlloop.operational.common.Drools/versions/1.0.0/.file"),
- ResourceFileUtils.getResourceAsString(
- "clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- String componentName = "onap.policies.controlloop.operational.common.Drools";
- jsonTemplateManager.getJsonSchemaForPolicyType(componentName, null, null);
- }
-
-
- /**
- * Test the launch translation.
- *
- * @throws IOException In case of failure
- * @throws UnknownComponentException In case of failure
- */
- public void testLaunchTranslation() throws IOException, UnknownComponentException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- String componentName = "onap.policies.controlloop.operational.common.Drools";
- jsonTemplateManager.getJsonSchemaForPolicyType(componentName, null, null);
- }
-
- /**
- * Test addTemplate.
- *
- * @throws IOException In case of failure
- */
- public void testAddTemplate() throws IOException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- int count = jsonTemplateManager.getJsonSchemaTemplates().size();
- List<JsonTemplateField>
- jsonTemplateFields =
- new ArrayList<>(Arrays.asList(new JsonTemplateField("type"), new JsonTemplateField("description"),
- new JsonTemplateField(
- "required"),
- new JsonTemplateField("metadata"), new JsonTemplateField("constraints")));
- jsonTemplateManager.addTemplate("test", jsonTemplateFields);
- assertNotSame(count, jsonTemplateManager.getJsonSchemaTemplates().size());
- }
-
- /**
- * test Remove template.
- *
- * @throws IOException In case of failure
- */
- public void testRemoveTemplate() throws IOException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- int count = jsonTemplateManager.getJsonSchemaTemplates().size();
- jsonTemplateManager.removeTemplate("string");
- assertNotSame(count, jsonTemplateManager.getJsonSchemaTemplates().size());
- }
-
- /**
- * Test update template.
- *
- * @throws IOException In case of failure
- */
- public void testUpdateTemplate() throws IOException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- int count = jsonTemplateManager.getJsonSchemaTemplates().get("integer").getJsonTemplateFields().size();
- jsonTemplateManager.updateTemplate("integer", new JsonTemplateField("type"), false);
- assertNotSame(count,
- jsonTemplateManager.getJsonSchemaTemplates().get("integer").getJsonTemplateFields().size());
- }
-
- /**
- * Test has template.
- *
- * @throws IOException In case of failure
- */
- public void testHasTemplate() throws IOException {
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- boolean has = true;
- List<JsonTemplateField> jsonTemplateFieldsString =
- new ArrayList<>(Arrays.asList(new JsonTemplateField("type"), new JsonTemplateField("description"),
- new JsonTemplateField("required"),
- new JsonTemplateField("metadata"), new JsonTemplateField("constraints")));
- JsonTemplate jsonTemplateTest = new JsonTemplate("String", jsonTemplateFieldsString);
- has = jsonTemplateManager.hasTemplate(jsonTemplateTest);
- assertEquals(false, has);
- }
-
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateTest.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateTest.java
deleted file mode 100644
index dc27d8aaa..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/JsonTemplateTest.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import junit.framework.TestCase;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplate;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateField;
-
-public class JsonTemplateTest extends TestCase {
-
- JsonTemplate toTest = new JsonTemplate("toTest");
- List<JsonTemplateField>
- jsonTemplateFields = new ArrayList<>(
- Arrays.asList(new JsonTemplateField("type"), new JsonTemplateField("description"),
- new JsonTemplateField(
- "enum")));
-
- /**
- * Test check failed.
- */
- public void testCheckFields() {
- toTest.setJsonTemplateFields(jsonTemplateFields);
- JsonTemplate reference = new JsonTemplate("toTest");
- reference.setJsonTemplateFields(jsonTemplateFields);
- assertTrue(toTest.checkFields(reference));
- }
-
- /**
- * Test other methods.
- */
- public void testOtherFields() {
- toTest.setJsonTemplateFields(jsonTemplateFields);
- toTest.addField(new JsonTemplateField("moreField"));
- toTest.setVisibility("moreField", true);
- toTest.setStatic("moreField", true);
- toTest.updateValueField("moreField", "testValue");
-
- assertTrue(toTest.isVisible("moreField"));
- assertTrue(toTest.getSpecificField("moreField").getValue().equals("testValue"));
- assertTrue(toTest.fieldStaticStatus("moreField"));
- assertTrue(toTest.toString()
- .equals(" templateFields : [type null null null, description null null null, "
- + "enum null null null, moreField testValue true true]"));
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaConverterWithDictionarySupportItCase.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaConverterWithDictionarySupportItCase.java
deleted file mode 100644
index 658419d4c..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaConverterWithDictionarySupportItCase.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import javax.transaction.Transactional;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.clds.tosca.update.execution.ToscaMetadataExecutor;
-import org.onap.policy.clamp.clds.tosca.update.parser.metadata.ToscaMetadataParserWithDictionarySupport;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateManager;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.service.Service;
-import org.onap.policy.clamp.tosca.Dictionary;
-import org.onap.policy.clamp.tosca.DictionaryElement;
-import org.onap.policy.clamp.tosca.DictionaryService;
-import org.skyscreamer.jsonassert.JSONAssert;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.ActiveProfiles;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-
-@RunWith(SpringJUnit4ClassRunner.class)
-@SpringBootTest(classes = Application.class)
-@ActiveProfiles({"clamp-default", "clamp-default-user", "default-dictionary-elements"})
-public class ToscaConverterWithDictionarySupportItCase {
-
- @Autowired
- private DictionaryService dictionaryService;
-
- @Autowired
- private ToscaMetadataParserWithDictionarySupport toscaMetadataParserWithDictionarySupport;
-
- @Autowired
- private ToscaMetadataExecutor toscaMetadataExecutor;
-
- /**
- * This Test validates Tosca yaml with metadata tag that contains policy_model_type and acronym
- * parameters which defines the Tosca Policy name and its short name.
- *
- * @throws IOException In case of issue when opening the tosca yaml file and
- * converted json file
- */
- @Test
- @Transactional
- public final void testMetadataClampPossibleValues() throws IOException, UnknownComponentException {
-
- // Set up dictionary elements
- Dictionary dictionaryTest = new Dictionary();
- dictionaryTest.setName("Context");
- dictionaryTest.setSecondLevelDictionary(0);
-
- DictionaryElement element = new DictionaryElement();
- element.setName("PROD");
- element.setShortName("PROD");
- element.setType("string");
- element.setDescription("Production");
- dictionaryTest.addDictionaryElements(element);
-
- dictionaryService.saveOrUpdateDictionary(dictionaryTest);
-
- Dictionary dictionaryTest1 = new Dictionary();
- dictionaryTest1.setName("EventDictionary");
- dictionaryTest1.setSecondLevelDictionary(0);
-
- DictionaryElement element1 = new DictionaryElement();
- element1.setName("alarmCondition");
- element1.setShortName("alarmCondition");
- element1.setType("string");
- element1.setDescription("Alarm Condition");
- dictionaryTest1.addDictionaryElements(element1);
-
- dictionaryService.saveOrUpdateDictionary(dictionaryTest1);
-
- Dictionary dictionaryTest2 = new Dictionary();
- dictionaryTest2.setName("Operators");
- dictionaryTest2.setSecondLevelDictionary(0);
-
- DictionaryElement element2 = new DictionaryElement();
- element2.setName("equals");
- element2.setShortName("equals");
- element2.setType("string");
- element2.setDescription("equals");
- dictionaryTest2.addDictionaryElements(element2);
- dictionaryService.saveOrUpdateDictionary(dictionaryTest2);
-
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils
- .getResourceAsString("tosca/new-converter/tosca_metadata_clamp_possible_values.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
-
- JsonObject jsonSchema = jsonTemplateManager.getJsonSchemaForPolicyType(
- "onap.policies.monitoring.cdap.tca.hi.lo.app", toscaMetadataParserWithDictionarySupport, null);
-
- JSONAssert.assertEquals(
- ResourceFileUtils
- .getResourceAsString("tosca/new-converter/tca-with-metadata.json"),
- JsonUtils.GSON.toJson(jsonSchema), true);
- }
-
- @Test
- @Transactional
- public final void testMetadataClampPossibleValueWithExecutor() throws IOException, UnknownComponentException {
- Service service = new Service(ResourceFileUtils.getResourceAsString("tosca/service-details.json"),
- ResourceFileUtils.getResourceAsString("tosca/resource-details-cds.json"));
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("http-cache/example/policy/api/v1/policytypes/onap"
- + ".policies.controlloop.operational.common.Apex/versions/1.0.0/.file"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
-
- JsonObject jsonSchema = jsonTemplateManager.getJsonSchemaForPolicyType(
- "onap.policies.controlloop.operational.common.Apex", toscaMetadataParserWithDictionarySupport, service);
-
- JSONAssert.assertEquals(
- ResourceFileUtils
- .getResourceAsString("tosca/new-converter/tosca_apex_with_metadata.json"),
- JsonUtils.GSON.toJson(jsonSchema), true);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementPropertyTest.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementPropertyTest.java
deleted file mode 100644
index 5652fa9cd..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementPropertyTest.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import com.google.gson.JsonArray;
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.util.ArrayList;
-import junit.framework.TestCase;
-import org.onap.policy.clamp.clds.tosca.update.elements.ToscaElement;
-import org.onap.policy.clamp.clds.tosca.update.elements.ToscaElementProperty;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplate;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateManager;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-
-public class ToscaElementPropertyTest extends TestCase {
- public ToscaElementPropertyTest() throws IOException {
- }
-
- /**
- * Test Parse array.
- *
- * @throws IOException In case of failure
- */
- public void testParseArray() throws IOException {
- JsonTemplateManager jsonTemplateManager = new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPoliciesEXTENTED.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- ToscaElement toscaElement = jsonTemplateManager.getToscaElements().get("onap.datatype.controlloop.Actor");
- ToscaElementProperty toscaElementProperty = toscaElement.getProperties().get("actor");
- JsonArray toTest =
- toscaElementProperty.parseArray((ArrayList<Object>) toscaElementProperty.getItems().get("default"));
- assertNotNull(toTest);
- }
-
- /**
- * Test add constraint as json.
- *
- * @throws IOException In case of failure
- */
- public void testAddConstraintsAsJson() throws IOException {
- JsonTemplateManager jsonTemplateManager = new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- ToscaElement toscaElement =
- jsonTemplateManager.getToscaElements().get("onap.datatype.controlloop.operation.Failure");
- ToscaElementProperty toscaElementProperty = toscaElement.getProperties().get("category");
- JsonTemplate jsonTemplate = jsonTemplateManager.getJsonSchemaTemplates().get("string");
- JsonObject toTest = new JsonObject();
- toscaElementProperty
- .addConstraintsAsJson(toTest, (ArrayList<Object>) toscaElementProperty.getItems().get("constraints"),
- jsonTemplate);
- String test = "{\"enum\":[\"error\",\"timeout\",\"retries\",\"guard\",\"exception\"]}";
- assertEquals(test, String.valueOf(toTest));
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementTest.java b/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementTest.java
deleted file mode 100644
index 7b17adeec..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/tosca/update/ToscaElementTest.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.tosca.update;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import junit.framework.TestCase;
-import org.onap.policy.clamp.clds.tosca.update.elements.ToscaElement;
-import org.onap.policy.clamp.clds.tosca.update.templates.JsonTemplateManager;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-
-public class ToscaElementTest extends TestCase {
-
- /**
- * Test propertiesName.
- *
- * @throws IOException In case of failure
- */
- public void testPropertiesNames() throws IOException {
- ArrayList<String> reference = new ArrayList<>(Arrays.asList("actor", "operation", "target", "payload"));
- JsonTemplateManager jsonTemplateManager =
- new JsonTemplateManager(
- ResourceFileUtils.getResourceAsString("tosca/new-converter/sampleOperationalPolicies.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/default-tosca-types.yaml"),
- ResourceFileUtils.getResourceAsString("clds/tosca-converter/templates.json"));
- ToscaElement toscaElement = jsonTemplateManager.getToscaElements().get("onap.datatype.controlloop.Actor");
- assertEquals(reference, toscaElement.propertiesNames());
- }
-
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/util/JsonUtilsTest.java b/src/test/java/org/onap/policy/clamp/clds/util/JsonUtilsTest.java
deleted file mode 100644
index b2c6d282a..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/util/JsonUtilsTest.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2018 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * Modifications copyright (c) 2019 Nokia
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.util;
-
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-
-import java.io.IOException;
-import org.junit.Test;
-
-public class JsonUtilsTest {
-
- public static class TestClass extends TestObject {
-
- String test2;
- TestObject2 object2;
-
- TestClass(String value1, String value2) {
- super(value1);
- test2 = value2;
- }
-
- void setObject2(TestObject2 object2) {
- this.object2 = object2;
- }
- }
-
- @Test
- public void testGetObjectMapperInstance() {
- assertNotNull(JsonUtils.GSON);
- }
-
- /**
- * This method test that the security hole in GSON is not enabled in the default
- * ObjectMapper.
- */
- @Test
- public void testCreateBeanDeserializer() {
- TestClass test = new TestClass("value1", "value2");
- test.setObject2(new TestObject2("test3"));
- Object testObject = JsonUtils.GSON.fromJson("[\"org.onap.policy.clamp.clds.util.JsonUtilsTest$TestClass\""
- + ",{\"test\":\"value1\",\"test2\":\"value2\","
- + "\"object2\":[\"org.onap.policy.clamp.clds.util.TestObject2\","
- + "{\"test3\":\"test3\"}]}]", Object.class);
- assertNotNull(testObject);
- assertFalse(testObject instanceof TestObject);
- }
-
- @Test(expected = IllegalArgumentException.class)
- public void shouldThrowExceptionFileNotExists() throws IOException {
- ResourceFileUtils.getResourceAsString("example/notExist.json");
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/util/LoggingUtilsTest.java b/src/test/java/org/onap/policy/clamp/clds/util/LoggingUtilsTest.java
deleted file mode 100644
index ab6a41bca..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/util/LoggingUtilsTest.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*-
-* ============LICENSE_START=======================================================
-* ONAP CLAMP
-* Copyright (C) 2019 Samsung. 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.
-* ============LICENSE_END============================================
-* ===================================================================
-*
-*/
-
-package org.onap.policy.clamp.clds.util;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.time.ZoneOffset;
-import java.time.ZonedDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Arrays;
-import java.util.Map;
-import javax.net.ssl.HttpsURLConnection;
-import javax.servlet.http.HttpServletRequest;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mockito;
-import org.mockito.runners.MockitoJUnitRunner;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.slf4j.MDC;
-import org.slf4j.event.Level;
-import org.springframework.http.HttpStatus;
-import org.springframework.security.core.Authentication;
-import org.springframework.security.core.context.SecurityContext;
-import org.springframework.security.core.context.SecurityContextHolder;
-import org.springframework.security.core.userdetails.UserDetails;
-
-/**
- * Test Logging Utils.
- */
-@RunWith(MockitoJUnitRunner.class)
-public class LoggingUtilsTest {
-
- protected static final Logger logger = LoggerFactory.getLogger(LoggingUtilsTest.class);
-
- private static final String SERVICE_NAME = "LogginUtilsTest: Test Entering method";
-
- private LoggingUtils util;
-
- @Before
- public void setup() {
- this.util = new LoggingUtils(logger);
- }
-
- @Test
- public void testEnteringLoggingUtils() {
- // given
- final String userName = "test";
-
- UserDetails userDetails = Mockito.mock(UserDetails.class);
- Mockito.when(userDetails.getUsername()).thenReturn(userName);
-
- Authentication localAuth = Mockito.mock(Authentication.class);
- Mockito.when(localAuth.getPrincipal()).thenReturn(userDetails);
-
- SecurityContext securityContext = Mockito.mock(SecurityContext.class);
- Mockito.when(securityContext.getAuthentication()).thenReturn(localAuth);
- SecurityContextHolder.setContext(securityContext);
-
- HttpServletRequest request = Mockito.mock(HttpServletRequest.class);
- // when
- util.entering(request, SERVICE_NAME);
-
- // then
- String[] keys = {OnapLogConstants.Mdcs.PARTNER_NAME, OnapLogConstants.Mdcs.ENTRY_TIMESTAMP,
- OnapLogConstants.Mdcs.REQUEST_ID, OnapLogConstants.Mdcs.INVOCATION_ID,
- OnapLogConstants.Mdcs.CLIENT_IP_ADDRESS, OnapLogConstants.Mdcs.SERVER_FQDN,
- OnapLogConstants.Mdcs.INSTANCE_UUID, OnapLogConstants.Mdcs.SERVICE_NAME};
- Map<String, String> mdc = MDC.getMDCAdapter().getCopyOfContextMap();
-
- assertTrue(checkMapKeys(mdc, keys));
- assertEquals(userName, mdc.get(OnapLogConstants.Mdcs.PARTNER_NAME));
- }
-
- @Test
- public void testExistingLoggingUtils() {
- // given
- MDC.put(OnapLogConstants.Mdcs.ENTRY_TIMESTAMP,
- ZonedDateTime.now(ZoneOffset.UTC).format(DateTimeFormatter.ISO_INSTANT));
-
- // when
- util.exiting(HttpStatus.OK.value(), SERVICE_NAME, Level.INFO,
- OnapLogConstants.ResponseStatus.COMPLETE);
-
- // then
- Map<String, String> mdc = MDC.getMDCAdapter().getCopyOfContextMap();
- assertNull(mdc);
- }
-
- @Test
- public void testInvokeTestUtils() {
- // given
- final String targetEntity = "LoggingUtilsTest";
- final String targetServiceName = "testInvokeTestUtils";
- HttpsURLConnection secureConnection = Mockito.mock(HttpsURLConnection.class);
-
- // when
- secureConnection = util.invokeHttps(secureConnection, targetEntity, targetServiceName);
-
- // then
- assertNotNull(secureConnection);
- String[] keys =
- {OnapLogConstants.Mdcs.TARGET_ENTITY, OnapLogConstants.Mdcs.TARGET_SERVICE_NAME,
- OnapLogConstants.Mdcs.INVOCATIONID_OUT, OnapLogConstants.Mdcs.INVOKE_TIMESTAMP};
- Map<String, String> mdc = MDC.getMDCAdapter().getCopyOfContextMap();
-
- assertTrue(checkMapKeys(mdc, keys));
- assertEquals(targetEntity, mdc.get(OnapLogConstants.Mdcs.TARGET_ENTITY));
- assertEquals(targetServiceName, mdc.get(OnapLogConstants.Mdcs.TARGET_SERVICE_NAME));
- }
-
- private boolean checkMapKeys(Map map, String[] keys) {
- return Arrays.stream(keys).allMatch(key -> map.get(key) != null);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/util/TestObject.java b/src/test/java/org/onap/policy/clamp/clds/util/TestObject.java
deleted file mode 100644
index 02cabd270..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/util/TestObject.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2018 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.util;
-
-public class TestObject {
-
- private String test;
-
- public String getTest() {
- return test;
- }
-
- public void setTest(String test) {
- this.test = test;
- }
-
- // @JsonProperty("test"), @JsonCreator
- public TestObject(String theString) {
- this.setTest(theString);
- }
-
- public TestObject() {
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/clds/util/TestObject2.java b/src/test/java/org/onap/policy/clamp/clds/util/TestObject2.java
deleted file mode 100644
index d5abf41d0..000000000
--- a/src/test/java/org/onap/policy/clamp/clds/util/TestObject2.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2018 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.clds.util;
-
-public class TestObject2 {
-
- private String test3;
-
- public String getTest3() {
- return test3;
- }
-
- public void setTest3(String test) {
- this.test3 = test;
- }
-
- public TestObject2(String theString) {
- this.setTest3(theString);
- }
-
- public TestObject2() {
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/flow/FlowLogOperationTest.java b/src/test/java/org/onap/policy/clamp/flow/FlowLogOperationTest.java
deleted file mode 100644
index 622fd5999..000000000
--- a/src/test/java/org/onap/policy/clamp/flow/FlowLogOperationTest.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2019 Samsung. All rights reserved.
- * ================================================================================
- * Modifications Copyright (c) 2021 AT&T
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.flow;
-
-import static junit.framework.Assert.assertEquals;
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.mock;
-
-import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
-import org.apache.camel.support.DefaultExchange;
-import org.junit.Test;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.clds.util.LoggingUtils;
-import org.onap.policy.clamp.clds.util.OnapLogConstants;
-import org.onap.policy.clamp.flow.log.FlowLogOperation;
-import org.slf4j.MDC;
-import org.slf4j.spi.MDCAdapter;
-import org.springframework.test.util.ReflectionTestUtils;
-
-public class FlowLogOperationTest {
-
- private FlowLogOperation flowLogOperation = new FlowLogOperation();
-
- @Test
- public void testStartLog() {
- // given
- LoggingUtils loggingUtils = mock(LoggingUtils.class);
- ReflectionTestUtils.setField(flowLogOperation, "util", loggingUtils);
-
- // when
- Mockito.when(loggingUtils.getProperties(OnapLogConstants.Mdcs.REQUEST_ID)).thenReturn("MockRequestId");
- Mockito.when(loggingUtils.getProperties(OnapLogConstants.Mdcs.INVOCATION_ID)).thenReturn("MockInvocationId");
- Mockito.when(loggingUtils.getProperties(OnapLogConstants.Mdcs.PARTNER_NAME)).thenReturn("MockPartnerName");
- Exchange exchange = new DefaultExchange(mock(CamelContext.class));
- flowLogOperation.startLog(exchange, "serviceName");
-
- // then
- assertThat(exchange.getProperty(OnapLogConstants.Headers.REQUEST_ID)).isEqualTo("MockRequestId");
- assertThat(exchange.getProperty(OnapLogConstants.Headers.INVOCATION_ID)).isEqualTo("MockInvocationId");
- assertThat(exchange.getProperty(OnapLogConstants.Headers.PARTNER_NAME)).isEqualTo("MockPartnerName");
- }
-
- @Test
- public void testInvokeLog() {
- // given
- final String mockEntity = "mockEntity";
- final String mockServiceName = "mockServiceName";
- MDCAdapter mdcAdapter = MDC.getMDCAdapter();
- // when
- flowLogOperation.invokeLog(mockEntity, mockServiceName);
- // then
- String entity = mdcAdapter.get(OnapLogConstants.Mdcs.TARGET_ENTITY);
- String serviceName = mdcAdapter.get(OnapLogConstants.Mdcs.TARGET_SERVICE_NAME);
- assertEquals(entity, mockEntity);
- assertEquals(serviceName, mockServiceName);
- }
-
- @Test
- public void testEndLog() {
- // given
- MDC.put(OnapLogConstants.Mdcs.ENTRY_TIMESTAMP, "2019-05-19T00:00:00.007Z");
- MDCAdapter mdcAdapter = MDC.getMDCAdapter();
- /// when
- flowLogOperation.endLog();
- // then
- assertThat(mdcAdapter.get(OnapLogConstants.Mdcs.ENTRY_TIMESTAMP)).isNull();
- }
-
- @Test
- public void testErrorLog() {
- // given
- MDC.put(OnapLogConstants.Mdcs.ENTRY_TIMESTAMP, "2019-05-19T00:00:00.007Z");
- MDCAdapter mdcAdapter = MDC.getMDCAdapter();
- // when
- flowLogOperation.errorLog();
- // then
- assertThat(mdcAdapter.get(OnapLogConstants.Mdcs.ENTRY_TIMESTAMP)).isNull();
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/loop/CsarInstallerItCase.java b/src/test/java/org/onap/policy/clamp/loop/CsarInstallerItCase.java
deleted file mode 100644
index b0abf832b..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/CsarInstallerItCase.java
+++ /dev/null
@@ -1,322 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2019, 2021 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications copyright (c) 2019 Nokia
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import javax.transaction.Transactional;
-import org.apache.commons.lang3.RandomStringUtils;
-import org.assertj.core.api.Assertions;
-import org.json.JSONException;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.clds.exception.sdc.controller.BlueprintParserException;
-import org.onap.policy.clamp.clds.exception.sdc.controller.CsarHandlerException;
-import org.onap.policy.clamp.clds.exception.sdc.controller.SdcArtifactInstallerException;
-import org.onap.policy.clamp.clds.sdc.controller.installer.BlueprintArtifact;
-import org.onap.policy.clamp.clds.sdc.controller.installer.CsarHandler;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.cds.CdsDataInstaller;
-import org.onap.policy.clamp.loop.service.ServicesRepository;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.LoopTemplateLoopElementModel;
-import org.onap.policy.clamp.loop.template.LoopTemplatesRepository;
-import org.onap.policy.clamp.loop.template.PolicyModelId;
-import org.onap.policy.clamp.loop.template.PolicyModelsRepository;
-import org.onap.sdc.api.notification.IArtifactInfo;
-import org.onap.sdc.api.notification.INotificationData;
-import org.onap.sdc.api.notification.IResourceInstance;
-import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
-import org.onap.sdc.tosca.parser.exceptions.SdcToscaParserException;
-import org.onap.sdc.tosca.parser.impl.SdcToscaParserFactory;
-import org.onap.sdc.toscaparser.api.elements.Metadata;
-import org.skyscreamer.jsonassert.JSONAssert;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.Commit;
-import org.springframework.test.context.ActiveProfiles;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-@ActiveProfiles({"clamp-default", "clamp-default-user", "clamp-sdc-controller"})
-public class CsarInstallerItCase {
-
- private static final String CSAR_ARTIFACT_NAME_CDS = "example/sdc/service_Vloadbalancerms_cds.csar";
- private static final String CSAR_ARTIFACT_NAME_NO_CDS = "example/sdc/service_Vloadbalancerms_no_cds.csar";
- private static final String INVARIANT_SERVICE_UUID = "4cc5b45a-1f63-4194-8100-cd8e14248c92";
- private static final String INVARIANT_RESOURCE1_UUID = "07e266fc-49ab-4cd7-8378-ca4676f1b9ec";
- private static final String INVARIANT_RESOURCE2_UUID = "023a3f0d-1161-45ff-b4cf-8918a8ccf3ad";
- private static final String RESOURCE_INSTANCE_NAME_RESOURCE1 = "ResourceInstanceName1";
- private static final String RESOURCE_INSTANCE_NAME_RESOURCE2 = "ResourceInstanceName2";
-
- @Autowired
- private LoopTemplatesRepository loopTemplatesRepo;
-
- @Autowired
- ServicesRepository serviceRepository;
-
- @Autowired
- PolicyModelsRepository policyModelsRepository;
-
- @Autowired
- @Qualifier("csarInstaller")
- private CsarInstaller csarInstaller;
-
- private BlueprintArtifact buildFakeBlueprintArtifact(String instanceName, String invariantResourceUuid,
- String blueprintFilePath, String artifactName,
- String invariantServiceUuid) throws IOException {
- IResourceInstance resource = Mockito.mock(IResourceInstance.class);
- Mockito.when(resource.getResourceInstanceName()).thenReturn(instanceName);
- Mockito.when(resource.getResourceInvariantUUID()).thenReturn(invariantResourceUuid);
- BlueprintArtifact blueprintArtifact = Mockito.mock(BlueprintArtifact.class);
- Mockito.when(blueprintArtifact.getDcaeBlueprint())
- .thenReturn(ResourceFileUtils.getResourceAsString(blueprintFilePath));
- Mockito.when(blueprintArtifact.getBlueprintArtifactName()).thenReturn(artifactName);
- Mockito.when(blueprintArtifact.getBlueprintInvariantServiceUuid()).thenReturn(invariantServiceUuid);
- Mockito.when(blueprintArtifact.getResourceAttached()).thenReturn(resource);
- return blueprintArtifact;
- }
-
- private CsarHandler buildBadFakeCsarHandler(String generatedName, String csarFileName) throws IOException,
- SdcToscaParserException {
-
- // Build a Bad csar because the blueprint contains a link to a microservice that does not exist in the emulator
- // Create fake notification
- INotificationData notificationData = Mockito.mock(INotificationData.class);
- Mockito.when(notificationData.getServiceVersion()).thenReturn("1.0");
- // Create fake resource in notification
- CsarHandler csarHandler = Mockito.mock(CsarHandler.class);
- List<IResourceInstance> listResources = new ArrayList<>();
- Mockito.when(notificationData.getResources()).thenReturn(listResources);
- Map<String, BlueprintArtifact> blueprintMap = new HashMap<>();
- Mockito.when(csarHandler.getMapOfBlueprints()).thenReturn(blueprintMap);
- // Create fake blueprint artifact 1 on resource1
- BlueprintArtifact blueprintArtifact = buildFakeBlueprintArtifact(RESOURCE_INSTANCE_NAME_RESOURCE1,
- INVARIANT_RESOURCE1_UUID, "example/sdc/blueprint-dcae/tca-bad-policy.yaml", "tca-bad-policy.yaml",
- INVARIANT_SERVICE_UUID);
- listResources.add(blueprintArtifact.getResourceAttached());
- blueprintMap.put(blueprintArtifact.getBlueprintArtifactName(), blueprintArtifact);
-
- // Build fake csarhandler
- Mockito.when(csarHandler.getSdcNotification()).thenReturn(notificationData);
- // Build fake csar Helper
- ISdcCsarHelper csarHelper = Mockito.mock(ISdcCsarHelper.class);
- Metadata data = Mockito.mock(Metadata.class);
- Mockito.when(data.getValue("name")).thenReturn(generatedName);
- Mockito.when(notificationData.getServiceName()).thenReturn(generatedName);
- Mockito.when(csarHelper.getServiceMetadata()).thenReturn(data);
-
- // Create helper based on real csar to test policy yaml and global properties
- // set
- SdcToscaParserFactory factory = SdcToscaParserFactory.getInstance();
- String path = Thread.currentThread().getContextClassLoader().getResource(csarFileName).getFile();
- ISdcCsarHelper sdcHelper = factory.getSdcCsarHelper(path);
- Mockito.when(csarHandler.getSdcCsarHelper()).thenReturn(sdcHelper);
-
- // Mockito.when(csarHandler.getSdcCsarHelper()).thenReturn(csarHelper);
- Mockito.when(csarHandler.getPolicyModelYaml())
- .thenReturn(Optional.ofNullable(ResourceFileUtils.getResourceAsString("tosca/tosca_example.yaml")));
- return csarHandler;
- }
-
- private CsarHandler buildFakeCsarHandler(String generatedName, String csarFileName) throws IOException,
- SdcToscaParserException {
- // Create fake notification
- INotificationData notificationData = Mockito.mock(INotificationData.class);
- Mockito.when(notificationData.getServiceVersion()).thenReturn("1.0");
- // Create fake resource in notification
- CsarHandler csarHandler = Mockito.mock(CsarHandler.class);
- List<IResourceInstance> listResources = new ArrayList<>();
- Mockito.when(notificationData.getResources()).thenReturn(listResources);
- Map<String, BlueprintArtifact> blueprintMap = new HashMap<>();
- Mockito.when(csarHandler.getMapOfBlueprints()).thenReturn(blueprintMap);
- // Create fake blueprint artifact 1 on resource1
- BlueprintArtifact blueprintArtifact = buildFakeBlueprintArtifact(RESOURCE_INSTANCE_NAME_RESOURCE1,
- INVARIANT_RESOURCE1_UUID, "example/sdc/blueprint-dcae/tca.yaml", "tca.yaml", INVARIANT_SERVICE_UUID);
- listResources.add(blueprintArtifact.getResourceAttached());
- blueprintMap.put(blueprintArtifact.getBlueprintArtifactName(), blueprintArtifact);
- // Create fake blueprint artifact 2 on resource2
- blueprintArtifact = buildFakeBlueprintArtifact(RESOURCE_INSTANCE_NAME_RESOURCE2, INVARIANT_RESOURCE2_UUID,
- "example/sdc/blueprint-dcae/tca_2.yaml", "tca_2.yaml", INVARIANT_SERVICE_UUID);
- listResources.add(blueprintArtifact.getResourceAttached());
- blueprintMap.put(blueprintArtifact.getBlueprintArtifactName(), blueprintArtifact);
-
- // Create fake blueprint artifact 3 on resource 1 so that it's possible to
- // test multiple CL deployment per Service/vnf
- blueprintArtifact = buildFakeBlueprintArtifact(RESOURCE_INSTANCE_NAME_RESOURCE1, INVARIANT_RESOURCE1_UUID,
- "example/sdc/blueprint-dcae/tca_3.yaml", "tca_3.yaml", INVARIANT_SERVICE_UUID);
- blueprintMap.put(blueprintArtifact.getBlueprintArtifactName(), blueprintArtifact);
-
- // Create fake blueprint artifact 3 on resource 1 so that it's possible to
- // test multiple CL deployment per Service/vnf
- blueprintArtifact = buildFakeBlueprintArtifact(RESOURCE_INSTANCE_NAME_RESOURCE1, INVARIANT_RESOURCE1_UUID,
- "example/sdc/blueprint-dcae/tca-guilin.yaml", "tca-guilin.yaml", INVARIANT_SERVICE_UUID);
- blueprintMap.put(blueprintArtifact.getBlueprintArtifactName(), blueprintArtifact);
-
-
- // Build fake csarhandler
- Mockito.when(csarHandler.getSdcNotification()).thenReturn(notificationData);
- // Build fake csar Helper
- ISdcCsarHelper csarHelper = Mockito.mock(ISdcCsarHelper.class);
- Metadata data = Mockito.mock(Metadata.class);
- Mockito.when(data.getValue("name")).thenReturn(generatedName);
- Mockito.when(notificationData.getServiceName()).thenReturn(generatedName);
- Mockito.when(csarHelper.getServiceMetadata()).thenReturn(data);
-
- // Create helper based on real csar to test policy yaml and global properties
- // set
- SdcToscaParserFactory factory = SdcToscaParserFactory.getInstance();
- String path = Thread.currentThread().getContextClassLoader().getResource(csarFileName).getFile();
- ISdcCsarHelper sdcHelper = factory.getSdcCsarHelper(path);
- Mockito.when(csarHandler.getSdcCsarHelper()).thenReturn(sdcHelper);
-
- // Mockito.when(csarHandler.getSdcCsarHelper()).thenReturn(csarHelper);
- Mockito.when(csarHandler.getPolicyModelYaml())
- .thenReturn(Optional.ofNullable(ResourceFileUtils.getResourceAsString("tosca/tosca_example.yaml")));
- return csarHandler;
- }
-
- @Test
- @Transactional
- public void testGetPolicyModelYaml() throws IOException, SdcToscaParserException, CsarHandlerException {
- INotificationData notificationData = Mockito.mock(INotificationData.class);
- IArtifactInfo serviceArtifacts = Mockito.mock(IArtifactInfo.class);
- Mockito.when(serviceArtifacts.getArtifactType()).thenReturn("TOSCA_CSAR");
- List<IArtifactInfo> serviceArtifactsList = new ArrayList<>();
- serviceArtifactsList.add(serviceArtifacts);
- Mockito.when(notificationData.getServiceArtifacts()).thenReturn(serviceArtifactsList);
-
- CsarHandler csarHandler = new CsarHandler(notificationData, "", "");
- csarHandler.setFilePath(Thread.currentThread().getContextClassLoader().getResource(CSAR_ARTIFACT_NAME_CDS)
- .getFile());
- Assert.assertEquals(csarHandler.getPolicyModelYaml(), Optional
- .ofNullable(ResourceFileUtils.getResourceAsString("example/sdc/expected-result/policy-data.yaml")));
- }
-
- @Test
- @Transactional
- public void testIsCsarAlreadyDeployedTca() throws SdcArtifactInstallerException, SdcToscaParserException,
- CsarHandlerException, IOException, InterruptedException, BlueprintParserException {
- String generatedName = RandomStringUtils.randomAlphanumeric(5);
- CsarHandler csarHandler = buildFakeCsarHandler(generatedName, CSAR_ARTIFACT_NAME_CDS);
- assertThat(csarInstaller.isCsarAlreadyDeployed(csarHandler)).isFalse();
- csarInstaller.installTheCsar(csarHandler);
- assertThat(csarInstaller.isCsarAlreadyDeployed(csarHandler)).isTrue();
- }
-
- @Test
- @Transactional
- public void testWithoutCdsTca() throws SdcArtifactInstallerException, SdcToscaParserException,
- CsarHandlerException, IOException, InterruptedException, BlueprintParserException {
- String generatedName = RandomStringUtils.randomAlphanumeric(5);
- CsarHandler csarHandler = buildFakeCsarHandler(generatedName, CSAR_ARTIFACT_NAME_NO_CDS);
-
- assertThat(csarInstaller.isCsarAlreadyDeployed(csarHandler)).isFalse();
- csarInstaller.installTheCsar(csarHandler);
- assertThat(csarInstaller.isCsarAlreadyDeployed(csarHandler)).isTrue();
- }
-
- @Test(expected = SdcArtifactInstallerException.class)
- @Transactional
- public void testInstallTheBadCsarTca()
- throws IOException, SdcToscaParserException, InterruptedException, BlueprintParserException,
- SdcArtifactInstallerException {
- // This test validates that the blueprint is well rejected because the blueprint contains a link
- // to a policy that does not exist on the policy engine emulator.
- String generatedName = RandomStringUtils.randomAlphanumeric(5);
- csarInstaller.installTheCsar(buildBadFakeCsarHandler(generatedName, CSAR_ARTIFACT_NAME_NO_CDS));
- }
-
- @Test
- @Transactional
- @Commit
- public void testInstallTheCsarTca() throws SdcArtifactInstallerException, SdcToscaParserException,
- CsarHandlerException, IOException, JSONException, InterruptedException, BlueprintParserException {
- String generatedName = RandomStringUtils.randomAlphanumeric(5);
- csarInstaller.installTheCsar(buildFakeCsarHandler(generatedName, CSAR_ARTIFACT_NAME_CDS));
-
- assertThat(serviceRepository.existsById("63cac700-ab9a-4115-a74f-7eac85e3fce0")).isTrue();
- // We should have CDS info
- assertThat(serviceRepository.findById("63cac700-ab9a-4115-a74f-7eac85e3fce0").get().getResourceByType("VF")
- .getAsJsonObject("vLoadBalancerMS 0").getAsJsonObject(
- CdsDataInstaller.CONTROLLER_PROPERTIES)).isNotNull();
- assertThat(loopTemplatesRepo.existsById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
- RESOURCE_INSTANCE_NAME_RESOURCE1, "tca.yaml"))).isTrue();
- assertThat(loopTemplatesRepo.existsById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
- RESOURCE_INSTANCE_NAME_RESOURCE1, "tca_3.yaml"))).isTrue();
- assertThat(loopTemplatesRepo.existsById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
- RESOURCE_INSTANCE_NAME_RESOURCE2, "tca_2.yaml"))).isTrue();
- assertThat(loopTemplatesRepo.existsById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
- RESOURCE_INSTANCE_NAME_RESOURCE1, "tca-guilin.yaml"))).isTrue();
- // Verify now that policy and json representation, global properties are well
- // set
- LoopTemplate loopTemplate = loopTemplatesRepo.findById(LoopTemplate.generateLoopTemplateName(generatedName,
- "1.0", RESOURCE_INSTANCE_NAME_RESOURCE1, "tca.yaml")).get();
- assertThat(loopTemplate.getLoopElementModelsUsed()).hasSize(1);
- Assertions.assertThat(loopTemplate.getModelService().getServiceUuid())
- .isEqualTo("63cac700-ab9a-4115-a74f-7eac85e3fce0");
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("tosca/model-properties.json"),
- JsonUtils.GSON_JPA_MODEL.toJson(loopTemplate.getModelService()), true);
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("tosca/service-details.json"),
- JsonUtils.GSON_JPA_MODEL.toJson(loopTemplate.getModelService().getServiceDetails()), true);
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("tosca/resource-details.json"),
- JsonUtils.GSON_JPA_MODEL.toJson(loopTemplate.getModelService().getResourceDetails()), true);
- Assertions.assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
- .getLoopElementModel().getName()).isNotEmpty();
-
- loopTemplate = loopTemplatesRepo.findById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
- RESOURCE_INSTANCE_NAME_RESOURCE1, "tca_3.yaml")).get();
- assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
- .getLoopElementModel().getName()).isNotEmpty();
- assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
- .getLoopElementModel().getName()).isNotEmpty();
- assertThat(loopTemplate.getMaximumInstancesAllowed()).isEqualByComparingTo(Integer.valueOf(0));
- loopTemplate = loopTemplatesRepo.findById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
- RESOURCE_INSTANCE_NAME_RESOURCE2, "tca_2.yaml")).get();
- assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
- .getLoopElementModel().getName()).isNotEmpty();
-
- assertThat(policyModelsRepository.findAll().size()).isGreaterThanOrEqualTo(1);
- assertThat(policyModelsRepository
- .existsById(new PolicyModelId("onap.policies.monitoring.cdap.tca.hi.lo.app", "1.0.0"))).isTrue();
- assertThat(policyModelsRepository
- .getOne((new PolicyModelId("onap.policies.monitoring.cdap.tca.hi.lo.app", "1.0.0")))
- .getPolicyModelTosca()).isNotBlank();
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/DcaeComponentTest.java b/src/test/java/org/onap/policy/clamp/loop/DcaeComponentTest.java
deleted file mode 100644
index c95725457..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/DcaeComponentTest.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2019, 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.Gson;
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.util.List;
-import org.apache.camel.Exchange;
-import org.apache.camel.Message;
-import org.json.simple.parser.ParseException;
-import org.junit.Test;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.clds.model.dcae.DcaeInventoryResponse;
-import org.onap.policy.clamp.clds.model.dcae.DcaeOperationStatusResponse;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.components.external.DcaeComponent;
-import org.onap.policy.clamp.loop.components.external.ExternalComponentState;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-
-public class DcaeComponentTest {
-
- private Loop createTestLoop() {
- Loop loopTest = new Loop("ControlLoopTest");
- loopTest.setGlobalPropertiesJson(
- new Gson().fromJson(
- "{\"dcaeDeployParameters\":{\"uniqueBlueprintParameters\": {\"policy_id\": \"name\"}}}",
- JsonObject.class));
- loopTest.setLastComputedState(LoopState.DESIGN);
- loopTest.setDcaeDeploymentId("123456789");
- loopTest.setDcaeDeploymentStatusUrl("http://localhost:8085");
-
- MicroServicePolicy microServicePolicy = new MicroServicePolicy("configPolicyTest", new PolicyModel("policy1",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0"), true,
- new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), null, null, null);
- microServicePolicy.setConfigurationsJson(new Gson().fromJson("{\"param1\":\"value1\"}", JsonObject.class));
-
- loopTest.addMicroServicePolicy(microServicePolicy);
- LoopTemplate loopTemplate = new LoopTemplate("test", "yaml", 1, null);
- loopTemplate.setDcaeBlueprintId("UUID-blueprint");
- loopTest.setLoopTemplate(loopTemplate);
-
- return loopTest;
- }
-
- /**
- * Test the DcaeReponse roughly.
- *
- * @throws IOException In case of issues
- */
- @Test
- public void convertDcaeResponseTest() throws IOException {
- String dcaeFakeResponse = "{'requestId':'testId','operationType':'install','status':'state',"
- + "'error':'errorMessage', 'links':{'self':'selfUrl','uninstall':'uninstallUrl'}}";
- DcaeOperationStatusResponse responseObject = DcaeComponent.convertDcaeResponse(dcaeFakeResponse);
- assertThat(responseObject.getRequestId()).isEqualTo("testId");
- assertThat(responseObject.getOperationType()).isEqualTo("install");
- assertThat(responseObject.getStatus()).isEqualTo("state");
- assertThat(responseObject.getError()).isEqualTo("errorMessage");
- assertThat(responseObject.getLinks()).isNotNull();
- assertThat(responseObject.getLinks().getSelf()).isEqualTo("selfUrl");
- assertThat(responseObject.getLinks().getUninstall()).isEqualTo("uninstallUrl");
-
- assertThat(responseObject.getLinks().getStatus()).isNull();
- }
-
- @Test
- public void testGetDeployPayload() throws IOException {
- Loop loop = this.createTestLoop();
- String deploymentPayload = DcaeComponent.getDeployPayload(loop);
- String expectedPayload = "{\"serviceTypeId\":\"UUID-blueprint\",\"inputs\":{\"policy_id\":\"name\"}}";
- assertThat(deploymentPayload).isEqualTo(expectedPayload);
- }
-
- @Test
- public void testGetUndeployPayload() throws IOException {
- Loop loop = this.createTestLoop();
- String unDeploymentPayload = DcaeComponent.getUndeployPayload(loop);
- String expectedPayload = "{\"serviceTypeId\":\"UUID-blueprint\"}";
- assertThat(unDeploymentPayload).isEqualTo(expectedPayload);
- }
-
- /**
- * Test the computeState method of the DcaeComponent roughly.
- *
- * @throws IOException In case of issues
- */
- @Test
- public void computeStateTest() throws IOException {
- Exchange exchange = Mockito.mock(Exchange.class);
- Message message = Mockito.mock(Message.class);
- Exchange exchange2 = Mockito.mock(Exchange.class);
- Mockito.when(exchange.getIn()).thenReturn(message);
- Mockito.when(message.getExchange()).thenReturn(exchange2);
- Mockito.when(exchange2.getProperty("dcaeResponse")).thenReturn(null);
-
- DcaeComponent dcae = new DcaeComponent();
-
- // initial state
- ExternalComponentState state = dcae.computeState(exchange);
- assertThat(state.getStateName()).isEqualTo("BLUEPRINT_DEPLOYED");
-
- // OperationalType = install
- DcaeOperationStatusResponse dcaeResponse = Mockito.mock(DcaeOperationStatusResponse.class);
- Mockito.when(dcaeResponse.getOperationType()).thenReturn("install");
-
- Mockito.when(dcaeResponse.getStatus()).thenReturn("succeeded");
- Mockito.when(exchange2.getProperty("dcaeResponse")).thenReturn(dcaeResponse);
- ExternalComponentState state2 = dcae.computeState(exchange);
- assertThat(state2.getStateName()).isEqualTo("MICROSERVICE_INSTALLED_SUCCESSFULLY");
- Mockito.when(dcaeResponse.getStatus()).thenReturn("processing");
- ExternalComponentState state3 = dcae.computeState(exchange);
- assertThat(state3.getStateName()).isEqualTo("PROCESSING_MICROSERVICE_INSTALLATION");
-
- Mockito.when(dcaeResponse.getStatus()).thenReturn("failed");
- ExternalComponentState state4 = dcae.computeState(exchange);
- assertThat(state4.getStateName()).isEqualTo("MICROSERVICE_INSTALLATION_FAILED");
-
- // OperationalType = uninstall
- Mockito.when(dcaeResponse.getOperationType()).thenReturn("uninstall");
-
- Mockito.when(dcaeResponse.getStatus()).thenReturn("succeeded");
- Mockito.when(exchange2.getProperty("dcaeResponse")).thenReturn(dcaeResponse);
- ExternalComponentState state5 = dcae.computeState(exchange);
- assertThat(state5.getStateName()).isEqualTo("MICROSERVICE_UNINSTALLED_SUCCESSFULLY");
-
- Mockito.when(dcaeResponse.getStatus()).thenReturn("processing");
- ExternalComponentState state6 = dcae.computeState(exchange);
- assertThat(state6.getStateName()).isEqualTo("PROCESSING_MICROSERVICE_UNINSTALLATION");
-
- Mockito.when(dcaeResponse.getStatus()).thenReturn("failed");
- ExternalComponentState state7 = dcae.computeState(exchange);
- assertThat(state7.getStateName()).isEqualTo("MICROSERVICE_UNINSTALLATION_FAILED");
-
- // error cases
- Mockito.when(dcaeResponse.getOperationType()).thenReturn("whatever");
- ExternalComponentState state8 = dcae.computeState(exchange);
- assertThat(state8.getStateName()).isEqualTo("IN_ERROR");
-
- Mockito.when(dcaeResponse.getOperationType()).thenReturn("install");
- Mockito.when(dcaeResponse.getStatus()).thenReturn("anythingelse");
- ExternalComponentState state9 = dcae.computeState(exchange);
- assertThat(state9.getStateName()).isEqualTo("IN_ERROR");
- }
-
- /**
- * Test the Converter to DcaeInventoryResponse method.
- *
- * @throws IOException In case of failure
- * @throws ParseException In case of failure
- */
- @Test
- public void convertToDcaeInventoryResponseTest() throws IOException, ParseException {
-
- List<DcaeInventoryResponse> responseObject = DcaeComponent
- .convertToDcaeInventoryResponse(
- ResourceFileUtils.getResourceAsString("example/dcae/inventory-response.json"));
- assertThat(responseObject.get(0).getAsdcResourceId()).isEqualTo("testAsdcResourceId");
- assertThat(responseObject.get(0).getAsdcServiceId()).isEqualTo("testAsdcServiceId");
- assertThat(responseObject.get(0).getTypeName()).isEqualTo("testTypeName");
- assertThat(responseObject.get(0).getTypeId()).isEqualTo("testTypeId");
- assertThat(responseObject.get(0).getBlueprintTemplate()).isEqualTo("testBlueprintTemplate");
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/DeployFlowTestItCase.java b/src/test/java/org/onap/policy/clamp/loop/DeployFlowTestItCase.java
deleted file mode 100644
index 4d02b10dc..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/DeployFlowTestItCase.java
+++ /dev/null
@@ -1,321 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.Gson;
-import com.google.gson.JsonObject;
-import com.google.gson.JsonSyntaxException;
-import java.io.IOException;
-import java.util.Set;
-import javax.transaction.Transactional;
-import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
-import org.apache.camel.builder.ExchangeBuilder;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.loop.template.PolicyModelsService;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class DeployFlowTestItCase {
- private Gson gson = new Gson();
-
- @Autowired
- CamelContext camelContext;
-
- @Autowired
- PolicyModelsService policyModelsService;
-
- @Autowired
- LoopService loopService;
-
- @Autowired
- LoopsRepository loopsRepository;
-
- /**
- * This method tests a deployment a single blueprint.
- *
- * @throws JsonSyntaxException In case of issues
- * @throws IOException In case of issues
- */
- @Test
- @Transactional
- public void deployWithSingleBlueprintTest() throws JsonSyntaxException, IOException {
- Loop loopTest = createLoop("ControlLoopTest", "yamlcontent",
- "{\"dcaeDeployParameters\":{\"uniqueBlueprintParameters\": {\"policy_id\": \"name\"}}}",
- "UUID-blueprint");
- LoopTemplate template = new LoopTemplate();
- template.setName("templateName");
- template.setBlueprint("yamlcontent");
- loopTest.setLoopTemplate(template);
- MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
- loopTest.addMicroServicePolicy(microServicePolicy);
- loopService.saveOrUpdateLoop(loopTest);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest)
- .build();
-
- camelContext.createProducerTemplate().send("direct:deploy-loop", myCamelExchange);
-
- Loop loopAfterTest = loopService.getLoop("ControlLoopTest");
- assertThat(loopAfterTest.getDcaeDeploymentStatusUrl()).isNotNull();
- assertThat(loopAfterTest.getDcaeDeploymentId()).isNotNull();
- }
-
- /**
- * This method tests the deployment of multiple separated blueprints.
- *
- * @throws JsonSyntaxException In case of issues
- * @throws IOException In case of issues
- */
- @Test
- @Transactional
- public void deployWithMultipleBlueprintTest() throws JsonSyntaxException, IOException {
- Loop loopTest2 = createLoop("ControlLoopTest2", "yamlcontent", "{\"dcaeDeployParameters\": {"
- + "\"microService1\": {\"location_id\": \"\", \"policy_id\": \"TCA_ResourceInstanceName1_tca\"},"
- + "\"microService2\": {\"location_id\": \"\", \"policy_id\": \"TCA_ResourceInstanceName2_tca\"}"
- + "}}", "UUID-blueprint");
- LoopTemplate template = new LoopTemplate();
- template.setName("templateName");
- loopTest2.setLoopTemplate(template);
- MicroServicePolicy microServicePolicy1 = getMicroServicePolicy("microService1", "", "{\"configtype\":\"json\"}",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true);
- MicroServicePolicy microServicePolicy2 = getMicroServicePolicy("microService2", "", "{\"configtype\":\"json\"}",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true);
- loopTest2.addMicroServicePolicy(microServicePolicy1);
- loopTest2.addMicroServicePolicy(microServicePolicy2);
- loopsRepository.saveAndFlush(loopTest2);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest2)
- .build();
-
- camelContext.createProducerTemplate().send("direct:deploy-loop", myCamelExchange);
-
- Loop loopAfterTest = loopService.getLoop("ControlLoopTest2");
- Set<MicroServicePolicy> policyList = loopAfterTest.getMicroServicePolicies();
- for (MicroServicePolicy policy : policyList) {
- assertThat(policy.getDcaeDeploymentStatusUrl()).isNotNull();
- assertThat(policy.getDcaeDeploymentId()).isNotNull();
- }
- assertThat(loopAfterTest.getDcaeDeploymentStatusUrl()).isNull();
- assertThat(loopAfterTest.getDcaeDeploymentId()).isNull();
- }
-
- /**
- * This method tests the undeployment of a single blueprint.
- *
- * @throws JsonSyntaxException In case of issues
- * @throws IOException In case of issues
- */
- @Test
- @Transactional
- public void undeployWithSingleBlueprintTest() throws JsonSyntaxException, IOException {
- Loop loopTest = createLoop("ControlLoopTest", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "UUID-blueprint");
- LoopTemplate template = new LoopTemplate();
- template.setName("templateName");
- template.setBlueprint("yamlcontent");
- loopTest.setLoopTemplate(template);
- loopTest.setDcaeDeploymentId("testDeploymentId");
- loopTest.setDcaeDeploymentStatusUrl("testUrl");
- MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
- loopTest.addMicroServicePolicy(microServicePolicy);
- loopService.saveOrUpdateLoop(loopTest);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest)
- .build();
-
- camelContext.createProducerTemplate().send("direct:undeploy-loop", myCamelExchange);
-
- Loop loopAfterTest = loopService.getLoop("ControlLoopTest");
- assertThat(loopAfterTest.getDcaeDeploymentStatusUrl().contains("/uninstall")).isTrue();
- assertThat(loopAfterTest.getDcaeDeploymentId()).isNull();
- }
-
- /**
- * This method tests the undeployment of multiple separated blueprints.
- *
- * @throws JsonSyntaxException In case of issues
- * @throws IOException In case of issues
- */
- @Test
- @Transactional
- public void undeployWithMultipleBlueprintTest() throws JsonSyntaxException, IOException {
- Loop loopTest2 = createLoop("ControlLoopTest2", "yamlcontent", "{\"dcaeDeployParameters\": {"
- + "\"microService1\": {\"location_id\": \"\", \"policy_id\": \"TCA_ResourceInstanceName1_tca\"},"
- + "\"microService2\": {\"location_id\": \"\", \"policy_id\": \"TCA_ResourceInstanceName2_tca\"}"
- + "}}", "UUID-blueprint");
- LoopTemplate template = new LoopTemplate();
- template.setName("templateName");
- loopTest2.setLoopTemplate(template);
- MicroServicePolicy microServicePolicy1 = getMicroServicePolicy("microService1", "", "{\"configtype\":\"json\"}",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true,
- "testDeploymentId1", "testDeploymentStatusUrl1");
- MicroServicePolicy microServicePolicy2 = getMicroServicePolicy("microService2", "", "{\"configtype\":\"json\"}",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true,
- "testDeploymentId2", "testDeploymentStatusUrl2");
- loopTest2.addMicroServicePolicy(microServicePolicy1);
- loopTest2.addMicroServicePolicy(microServicePolicy2);
- loopsRepository.saveAndFlush(loopTest2);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest2)
- .build();
-
- camelContext.createProducerTemplate().send("direct:undeploy-loop", myCamelExchange);
-
- Loop loopAfterTest = loopService.getLoop("ControlLoopTest2");
- Set<MicroServicePolicy> policyList = loopAfterTest.getMicroServicePolicies();
- for (MicroServicePolicy policy : policyList) {
- assertThat(policy.getDcaeDeploymentStatusUrl().contains("/uninstall")).isTrue();
- assertThat(policy.getDcaeDeploymentId()).isNull();
-
- }
- assertThat(loopAfterTest.getDcaeDeploymentStatusUrl()).isNull();
- assertThat(loopAfterTest.getDcaeDeploymentId()).isNull();
- }
-
- /**
- * This method tests the DCAE get status for a single blueprint.
- *
- * @throws JsonSyntaxException In case of issues
- * @throws IOException In case of issues
- */
- @Test
- @Transactional
- public void getStatusWithSingleBlueprintTest() throws JsonSyntaxException, IOException {
- Loop loopTest = createLoop("ControlLoopTest", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "UUID-blueprint");
- LoopTemplate template = new LoopTemplate();
- template.setName("templateName");
- template.setBlueprint("yamlcontent");
- loopTest.setLoopTemplate(template);
- MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
- loopTest.addMicroServicePolicy(microServicePolicy);
- loopService.saveOrUpdateLoop(loopTest);
- assertThat(loopTest.getComponents().size()).isEqualTo(2);
- assertThat(loopTest.getComponent("DCAE")).isNotNull();
- assertThat(loopTest.getComponent("POLICY")).isNotNull();
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest)
- .build();
-
- camelContext.createProducerTemplate().send("direct:update-dcae-status-for-loop", myCamelExchange);
-
- assertThat(loopTest.getComponent("DCAE").getState().getStateName()).isEqualTo("BLUEPRINT_DEPLOYED");
-
- Loop loopAfterTest = loopService.getLoop("ControlLoopTest");
- assertThat(loopAfterTest.getComponents().size()).isEqualTo(2);
- assertThat(loopAfterTest.getComponent("DCAE")).isNotNull();
- assertThat(loopAfterTest.getComponent("POLICY")).isNotNull();
- }
-
- /**
- * This method tests the dcae get status for multiple blueprints.
- *
- * @throws JsonSyntaxException In case of issues
- * @throws IOException In case of issues
- */
- @Test
- @Transactional
- public void getStatusWithMultipleBlueprintTest() throws JsonSyntaxException, IOException {
- Loop loopTest = createLoop("ControlLoopTest", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "UUID-blueprint");
- LoopTemplate template = new LoopTemplate();
- template.setName("templateName");
- loopTest.setLoopTemplate(template);
- MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
- MicroServicePolicy microServicePolicy2 = getMicroServicePolicy("configPolicyTest2", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
- loopTest.addMicroServicePolicy(microServicePolicy);
- loopTest.addMicroServicePolicy(microServicePolicy2);
- loopService.saveOrUpdateLoop(loopTest);
- assertThat(loopTest.getComponents().size()).isEqualTo(3);
- assertThat(loopTest.getComponent("DCAE")).isNull();
- assertThat(loopTest.getComponent("DCAE_configPolicyTest")).isNotNull();
- assertThat(loopTest.getComponent("DCAE_configPolicyTest2")).isNotNull();
- assertThat(loopTest.getComponent("POLICY")).isNotNull();
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest)
- .build();
-
- camelContext.createProducerTemplate().send("direct:update-dcae-status-for-loop", myCamelExchange);
-
- assertThat(loopTest.getComponent("DCAE_configPolicyTest").getState().getStateName())
- .isEqualTo("BLUEPRINT_DEPLOYED");
- assertThat(loopTest.getComponent("DCAE_configPolicyTest2").getState().getStateName())
- .isEqualTo("BLUEPRINT_DEPLOYED");
-
- Loop loopAfterTest = loopService.getLoop("ControlLoopTest");
- assertThat(loopAfterTest.getComponents().size()).isEqualTo(3);
- assertThat(loopAfterTest.getComponent("DCAE")).isNull();
- assertThat(loopAfterTest.getComponent("POLICY")).isNotNull();
- assertThat(loopTest.getComponent("DCAE_configPolicyTest")).isNotNull();
- assertThat(loopTest.getComponent("DCAE_configPolicyTest2")).isNotNull();
- }
-
- private Loop createLoop(String name, String blueprint, String globalPropertiesJson,
- String dcaeBlueprintId) throws JsonSyntaxException, IOException {
- Loop loop = new Loop(name);
- loop.setGlobalPropertiesJson(new Gson().fromJson(globalPropertiesJson, JsonObject.class));
- loop.setLastComputedState(LoopState.DESIGN);
- return loop;
- }
-
- private MicroServicePolicy getMicroServicePolicy(String name, String modelType, String jsonRepresentation,
- String policyTosca, String jsonProperties, boolean shared) {
-
- PolicyModel policyModel = new PolicyModel(modelType, policyTosca, "1.0.0");
- policyModelsService.saveOrUpdatePolicyModel(policyModel);
- MicroServicePolicy microService = new MicroServicePolicy(name, policyModel,
- shared,
- gson.fromJson(jsonRepresentation, JsonObject.class), null, null, null);
-
- microService.setConfigurationsJson(new Gson().fromJson(jsonProperties, JsonObject.class));
- return microService;
- }
-
- private MicroServicePolicy getMicroServicePolicy(String name, String modelType, String jsonRepresentation,
- String policyTosca, String jsonProperties, boolean shared,
- String deploymengId,
- String deploymentStatusUrl) {
- MicroServicePolicy microService = getMicroServicePolicy(name, modelType, jsonRepresentation, policyTosca,
- jsonProperties, shared);
-
- microService.setDcaeDeploymentId(deploymengId);
- microService.setDcaeDeploymentStatusUrl(deploymentStatusUrl);
- return microService;
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/ExternalComponentStateTest.java b/src/test/java/org/onap/policy/clamp/loop/ExternalComponentStateTest.java
deleted file mode 100644
index a73b2784b..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/ExternalComponentStateTest.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import org.junit.Test;
-import org.onap.policy.clamp.loop.components.external.ExternalComponentState;
-
-public class ExternalComponentStateTest {
- private ExternalComponentState state = new ExternalComponentState("NOT_SENT",
- "The policies defined have NOT yet been created on the policy engine", 90);
-
- @Test
- public void generalTest() {
- assertThat(state.toString()).isEqualTo("NOT_SENT");
- state.setLevel(70);
- assertThat(state.getLevel()).isEqualTo(70);
- }
-
- @Test
- public void equalsTest() {
- assertThat(state.equals(null)).isEqualTo(false);
-
- ExternalComponentState state2 = new ExternalComponentState("NOT_SENT",
- "The policies defined have NOT yet been created on the policy engine", 90);
- assertThat(state.equals(state2)).isEqualTo(true);
-
- assertThat(state.equals(12)).isEqualTo(false);
-
- state2.setLevel(70);
- assertThat(state.equals(state2)).isEqualTo(true);
-
- ExternalComponentState state3 = new ExternalComponentState("SENT",
- "The policies defined have NOT yet been created on the policy engine", 90);
- assertThat(state.equals(state3)).isEqualTo(false);
-
- ExternalComponentState state4 = new ExternalComponentState(null,
- "The policies defined have NOT yet been created on the policy engine", 90);
- ExternalComponentState state5 = new ExternalComponentState(null,
- "The policies defined have NOT yet been", 50);
- assertThat(state4.equals(state3)).isEqualTo(false);
- assertThat(state4.equals(state5)).isEqualTo(true);
- }
-
- @Test
- public void compareToTest() {
- ExternalComponentState state2 = new ExternalComponentState("NOT_SENT",
- "The policies defined have NOT yet been created on the policy engine", 90);
- assertThat(state.compareTo(state2)).isEqualTo(0);
-
- ExternalComponentState state3 = new ExternalComponentState("SENT",
- "The policies defined have NOT yet been created on the policy engine", 50);
- assertThat(state.compareTo(state3)).isEqualTo(1);
-
- ExternalComponentState state4 = new ExternalComponentState(null,
- "The policies defined have NOT yet been created on the policy engine", 100);
- assertThat(state.compareTo(state4)).isEqualTo(-1);
-
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/loop/LoopControllerTestItCase.java b/src/test/java/org/onap/policy/clamp/loop/LoopControllerTestItCase.java
deleted file mode 100644
index 6728d292c..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/LoopControllerTestItCase.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 Nokia Intellectual Property. All rights
- * reserved.
- * Modifications Copyright (C) 2019 Huawei Technologies Co., Ltd.
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonArray;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonObject;
-import com.google.gson.JsonParser;
-import java.io.IOException;
-import java.util.Set;
-import javax.transaction.Transactional;
-import org.assertj.core.api.Assertions;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.loop.service.Service;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.loop.template.PolicyModelsService;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicyService;
-import org.onap.policy.clamp.policy.operational.OperationalPolicy;
-import org.onap.policy.clamp.policy.operational.OperationalPolicyService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class LoopControllerTestItCase {
-
- private static final String EXAMPLE_LOOP_NAME = "ClosedLoopTest";
- private static final String EXAMPLE_JSON = "{\"testName\":\"testValue\"}";
-
- @Autowired
- LoopService loopService;
-
- @Autowired
- LoopsRepository loopsRepository;
-
- @Autowired
- MicroServicePolicyService microServicePolicyService;
-
- @Autowired
- OperationalPolicyService operationalPolicyService;
-
- @Autowired
- PolicyModelsService policyModelsService;
-
- @Autowired
- LoopController loopController;
-
- private void saveTestLoopToDb() {
- Loop testLoop = createTestLoop(EXAMPLE_LOOP_NAME, "blueprint", "representation");
- testLoop.setGlobalPropertiesJson(JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class));
- LoopTemplate template = new LoopTemplate();
- template.setName("testTemplate");
- testLoop.setLoopTemplate(template);
- Service modelService = new Service("{\"name\":\"serviceName\",\"UUID\":\"uuid\"}", "{}");
- testLoop.setModelService(modelService);
- loopService.saveOrUpdateLoop(testLoop);
- }
-
- private Loop createTestLoop(String loopName, String loopBlueprint, String loopSvg) {
- return new Loop(loopName);
- }
-
- @Test
- @Transactional
- public void testUpdateOperationalPolicies() {
- saveTestLoopToDb();
- String policy = "[{\"name\":\"OPERATIONAL_CLholmes31_v1_0_vFW_PG_T10_k8s-holmes-rules\","
- + "\"configurationsJson\":{"
- + "\"operational_policy\":{\"controlLoop\":{\"trigger_policy\":\"unique-policy-id-1-modifyConfig\","
- + "\"timeout\":\"3600\",\"abatement\":\"false\","
- + "\"controlLoopName\":\"LOOP_CLholmes31_v1_0_vFW_PG_T10_k8s-holmes-rules\"},"
- + "\"policies\":[{\"id\":\"unique-policy-id-1-modifyConfig\",\"recipe\":\"ModifyConfig\","
- + "\"retry\":\"2\",\"timeout\":\"1200\",\"actor\":\"APPC\",\"payload\":\"{\\\"active-streams\\\":5}\","
- + "\"success\":\"\",\"failure\":\"\",\"failure_timeout\":\"\",\"failure_retries\":\"\","
- + "\"failure_exception\":\"\",\"failure_guard\":\"\",\"target\":{\"type\":\"VNF\","
- + "\"resourceID\":\"vFW_PG_T1\"}}]}}}]";
- JsonParser parser = new JsonParser();
- JsonElement ele = parser.parse(policy);
- JsonArray arr = ele.getAsJsonArray();
- Loop loop = loopController.updateOperationalPolicies(EXAMPLE_LOOP_NAME, arr);
- assertThat(loop.getOperationalPolicies()).hasSize(1);
- Set<OperationalPolicy> opSet = loop.getOperationalPolicies();
- OperationalPolicy op = opSet.iterator().next();
- assertThat(op.getName()).isEqualTo("OPERATIONAL_CLholmes31_v1_0_vFW_PG_T10_k8s-holmes-rules");
- }
-
- @Test
- @Transactional
- public void testUpdateGlobalProperties() {
- saveTestLoopToDb();
- String policy = "{\"dcaeDeployParameters\":{\"aaiEnrichmentHost\":\"aai.onap.svc.cluster.local\","
- + "\"aaiEnrichmentPort\":\"8443\",\"enableAAIEnrichment\":\"false\",\"dmaap_host\":\"message-router"
- + ".onap\",\"dmaap_port\":\"3904\",\"enableRedisCaching\":\"false\",\"redisHosts\":\"dcae-redis.onap"
- + ".svc.cluster.local:6379\",\"tag_version\":\"nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments"
- + ".tca-cdap-container:1.1.1\",\"consul_host\":\"consul-server.onap\",\"consul_port\":\"8500\","
- + "\"cbs_host\":\"config-binding-service\",\"cbs_port\":\"10000\",\"external_port\":\"32012\","
- + "\"policy_model_id\":\"onap.policies.monitoring.cdap.tca.hi.lo.app\","
- + "\"policy_id\":\"tca_k8s_CLTCA_v1_0_vFW_PG_T10_k8s-tca-clamp-policy-05162019\"}}";
- JsonParser parser = new JsonParser();
- JsonElement ele = parser.parse(policy);
- JsonObject obj = ele.getAsJsonObject();
- loopController.updateGlobalPropertiesJson(EXAMPLE_LOOP_NAME, obj);
- Loop loop = loopController.getLoop(EXAMPLE_LOOP_NAME);
- JsonObject globalPropertiesJson = loop.getGlobalPropertiesJson();
- JsonObject prop = globalPropertiesJson.getAsJsonObject("dcaeDeployParameters");
- assertThat(prop.get("aaiEnrichmentHost").getAsString()).isEqualTo("aai.onap.svc.cluster.local");
- }
-
- @Test
- @Transactional
- public void testUpdateMicroservicePolicy() {
- saveTestLoopToDb();
- PolicyModel policyModel = new PolicyModel("testPolicyModel",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0");
- policyModelsService.saveOrUpdatePolicyModel(policyModel);
- MicroServicePolicy policy = new MicroServicePolicy("policyName", policyModel, false,
- JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
- loopController.updateMicroservicePolicy(EXAMPLE_LOOP_NAME, policy);
- assertThat(microServicePolicyService.isExisting("policyName")).isTrue();
- }
-
- @Test
- @Transactional
- public void testAddAndRemoveOperationalPolicies() throws IOException {
- saveTestLoopToDb();
- PolicyModel policyModel = new PolicyModel("testPolicyModel",
- null, "1.0.0");
- policyModelsService.saveOrUpdatePolicyModel(policyModel);
-
- loopController.addOperationalPolicy(EXAMPLE_LOOP_NAME, "testPolicyModel", "1.0.0");
-
- Loop newLoop = loopController.getLoop(EXAMPLE_LOOP_NAME);
- Set<OperationalPolicy> opPolicyList = newLoop.getOperationalPolicies();
- assertThat(opPolicyList.size()).isEqualTo(1);
- for (OperationalPolicy policy : opPolicyList) {
- assertThat(policy.getName().contains("OPERATIONAL_serviceName")).isTrue();
- Assertions.assertThat(policy.getPolicyModel().getPolicyModelType()).isEqualTo("testPolicyModel");
- Assertions.assertThat(policy.getPolicyModel().getVersion()).isEqualTo("1.0.0");
- }
-
- loopController.removeOperationalPolicy(EXAMPLE_LOOP_NAME, "testPolicyModel", "1.0.0");
- Loop newLoop2 = loopController.getLoop(EXAMPLE_LOOP_NAME);
- assertThat(newLoop2.getOperationalPolicies().size()).isEqualTo(0);
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/loop/LoopLogServiceTestItCase.java b/src/test/java/org/onap/policy/clamp/loop/LoopLogServiceTestItCase.java
deleted file mode 100644
index 7b0ab8614..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/LoopLogServiceTestItCase.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 Huawei Technologies Co., Ltd.
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonObject;
-import java.util.Set;
-import javax.transaction.Transactional;
-import org.assertj.core.api.Assertions;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.loop.log.LogType;
-import org.onap.policy.clamp.loop.log.LoopLog;
-import org.onap.policy.clamp.loop.log.LoopLogService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class LoopLogServiceTestItCase {
-
- private static final String EXAMPLE_LOOP_NAME = "ClosedLoopTest";
- private static final String EXAMPLE_JSON = "{\"testName\":\"testValue\"}";
- private static final String CLAMP_COMPONENT = "CLAMP";
- private static final String SAMPLE_LOG_MESSAGE = "Sample log";
- private static final String BLUEPRINT = "blueprint";
-
- @Autowired
- LoopService loopService;
-
- @Autowired
- LoopsRepository loopsRepository;
-
- @Autowired
- LoopLogService loopLogService;
-
- private void saveTestLoopToDb() {
- Loop testLoop = new Loop(EXAMPLE_LOOP_NAME);
- testLoop.setGlobalPropertiesJson(JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class));
- loopService.saveOrUpdateLoop(testLoop);
- }
-
- @Test
- @Transactional
- public void testAddLog() {
- saveTestLoopToDb();
- Loop loop = loopService.getLoop(EXAMPLE_LOOP_NAME);
- loopLogService.addLog(SAMPLE_LOG_MESSAGE, "INFO", loop);
- Set<LoopLog> loopLogs = loop.getLoopLogs();
- assertThat(loopLogs).hasSize(1);
- LoopLog loopLog = loopLogs.iterator().next();
- assertThat(loopLog.getMessage()).isEqualTo(SAMPLE_LOG_MESSAGE);
- }
-
- @Test
- @Transactional
- public void testLoopLog() {
- LoopLog log = new LoopLog();
- Long id = Long.valueOf(100);
- log.setId(id);
- log.setLogComponent(CLAMP_COMPONENT);
- log.setLogType(LogType.INFO);
- log.setMessage(SAMPLE_LOG_MESSAGE);
- Loop testLoop = new Loop(EXAMPLE_LOOP_NAME);
- log.setLoop(testLoop);
- assertThat(log.getMessage()).isEqualTo(SAMPLE_LOG_MESSAGE);
- assertThat(log.getLogType()).isEqualTo(LogType.INFO);
- assertThat(log.getLogComponent()).isEqualTo(CLAMP_COMPONENT);
- assertThat(log.getId()).isEqualTo(id);
- Assertions.assertThat(log.getLoop()).isEqualTo(testLoop);
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/loop/LoopRepositoriesItCase.java b/src/test/java/org/onap/policy/clamp/loop/LoopRepositoriesItCase.java
deleted file mode 100644
index e18dd2475..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/LoopRepositoriesItCase.java
+++ /dev/null
@@ -1,258 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonObject;
-import java.time.Instant;
-import org.assertj.core.api.Assertions;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.loop.log.LogType;
-import org.onap.policy.clamp.loop.log.LoopLog;
-import org.onap.policy.clamp.loop.log.LoopLogRepository;
-import org.onap.policy.clamp.loop.service.Service;
-import org.onap.policy.clamp.loop.service.ServicesRepository;
-import org.onap.policy.clamp.loop.template.LoopElementModel;
-import org.onap.policy.clamp.loop.template.LoopElementModelsRepository;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.LoopTemplatesRepository;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.loop.template.PolicyModelId;
-import org.onap.policy.clamp.loop.template.PolicyModelsRepository;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicyService;
-import org.onap.policy.clamp.policy.operational.OperationalPolicy;
-import org.onap.policy.clamp.policy.operational.OperationalPolicyService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.transaction.annotation.Transactional;
-
-@RunWith(SpringJUnit4ClassRunner.class)
-@SpringBootTest(classes = Application.class)
-public class LoopRepositoriesItCase {
-
- private Gson gson = new GsonBuilder().setPrettyPrinting().excludeFieldsWithoutExposeAnnotation().create();
-
- @Autowired
- private LoopsRepository loopRepository;
-
- @Autowired
- private MicroServicePolicyService microServicePolicyService;
-
- @Autowired
- private OperationalPolicyService operationalPolicyService;
-
- @Autowired
- private LoopLogRepository loopLogRepository;
-
- @Autowired
- private LoopTemplatesRepository loopTemplateRepository;
-
- @Autowired
- private LoopElementModelsRepository microServiceModelsRepository;
-
- @Autowired
- private PolicyModelsRepository policyModelsRepository;
-
- @Autowired
- private ServicesRepository servicesRepository;
-
- private Service getService(String serviceDetails, String resourceDetails) {
- return new Service(serviceDetails, resourceDetails);
- }
-
- private OperationalPolicy getOperationalPolicy(String configJson, String name, PolicyModel policyModel) {
- return new OperationalPolicy(name, null, new Gson().fromJson(configJson, JsonObject.class), policyModel,
- null, null, null);
- }
-
- private LoopElementModel getLoopElementModel(String yaml, String name, String policyType, String createdBy,
- PolicyModel policyModel) {
- LoopElementModel model = new LoopElementModel(name, policyType, yaml);
- model.addPolicyModel(policyModel);
- return model;
- }
-
- private PolicyModel getPolicyModel(String policyType, String policyModelTosca, String version,
- String policyAcronym) {
- return new PolicyModel(policyType, policyModelTosca, version, policyAcronym);
- }
-
- private LoopTemplate getLoopTemplates(String name, String blueprint, String createdBy,
- Integer maxInstancesAllowed) {
- LoopTemplate template = new LoopTemplate(name, blueprint, maxInstancesAllowed, null);
- template.addLoopElementModel(getLoopElementModel("yaml", "microService1", "org.onap.policy.drools", createdBy,
- getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools")));
- template.addLoopElementModel(getLoopElementModel("yaml", "oppolicy1", "org.onap.policy.drools.legacy",
- createdBy, getPolicyModel("org.onap.policy.drools.legacy", "yaml", "1.0.0", "DroolsLegacy")));
- loopTemplateRepository.save(template);
- return template;
- }
-
- private Loop getLoop(String name, String blueprint, String globalPropertiesJson,
- String dcaeId, String dcaeUrl, String dcaeBlueprintId) {
- Loop loop = new Loop();
- loop.setName(name);
- loop.setGlobalPropertiesJson(new Gson().fromJson(globalPropertiesJson, JsonObject.class));
- loop.setLastComputedState(LoopState.DESIGN);
- loop.setDcaeDeploymentId(dcaeId);
- loop.setDcaeDeploymentStatusUrl(dcaeUrl);
- loop.setLoopTemplate(getLoopTemplates("templateName", "yaml", "toto", 1));
- return loop;
- }
-
- private MicroServicePolicy getMicroServicePolicy(String name, String jsonRepresentation, String jsonProperties,
- boolean shared, PolicyModel policyModel) {
- MicroServicePolicy microService = new MicroServicePolicy(name, policyModel, shared,
- gson.fromJson(jsonRepresentation, JsonObject.class), null, null, null);
- microService.setConfigurationsJson(new Gson().fromJson(jsonProperties, JsonObject.class));
- return microService;
- }
-
- private LoopLog getLoopLog(LogType type, String message, Loop loop) {
- return new LoopLog(message, type, "CLAMP", loop);
- }
-
- /**
- * This method does a crud test and save a loop template and a loop object in db.
- */
- @Test
- @Transactional
- public void crudTest() {
- // Setup
- Loop loopTest = getLoop("ControlLoopTest", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "123456789", "https://dcaetest.org", "UUID-blueprint");
- OperationalPolicy opPolicy = this.getOperationalPolicy("{\"type\":\"GUARD\"}", "GuardOpPolicyTest",
- getPolicyModel("org.onap.policy.drools.legacy", "yaml", "1.0.0", "DroolsLegacy"));
- loopTest.addOperationalPolicy(opPolicy);
- MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "{\"configtype\":\"json\"}",
- "{\"param1\":\"value1\"}", true, getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools"));
- loopTest.addMicroServicePolicy(microServicePolicy);
- LoopLog loopLog = getLoopLog(LogType.INFO, "test message", loopTest);
- loopTest.addLog(loopLog);
- Service service = getService(
- "{\"name\": \"vLoadBalancerMS\", \"UUID\": \"63cac700-ab9a-4115-a74f-7eac85e3fce0\"}", "{\"CP\": {}}");
- loopTest.setModelService(service);
-
- // Attempt to save into the database the entire loop
- Loop loopInDb = loopRepository.save(loopTest);
- assertThat(loopInDb).isNotNull();
- assertThat(loopRepository.findById(loopInDb.getName()).get()).isNotNull();
- assertThat(loopInDb.getCreatedDate()).isNotNull();
- assertThat(loopInDb.getUpdatedDate()).isNotNull();
- assertThat(loopInDb.getUpdatedDate()).isEqualTo(loopInDb.getCreatedDate());
- assertThat(loopInDb.getName()).isEqualTo("ControlLoopTest");
- // Autogen id so now set the ID in the previous model so that we can compare the
- // objects
- loopLog.setId(((LoopLog) loopInDb.getLoopLogs().toArray()[0]).getId());
-
- assertThat(loopInDb).isEqualToIgnoringGivenFields(loopTest, "components", "createdDate", "updatedDate",
- "createdBy", "updatedBy");
- assertThat(loopRepository.existsById(loopTest.getName())).isEqualTo(true);
- assertThat(operationalPolicyService.isExisting(opPolicy.getName())).isEqualTo(true);
- assertThat(microServicePolicyService.isExisting(microServicePolicy.getName())).isEqualTo(true);
- assertThat(loopLogRepository.existsById(loopLog.getId())).isEqualTo(true);
- assertThat(loopTemplateRepository.existsById(loopInDb.getLoopTemplate().getName())).isEqualTo(true);
- assertThat(loopTemplateRepository.existsById(loopInDb.getLoopTemplate().getName())).isEqualTo(true);
- assertThat(servicesRepository.existsById(loopInDb.getModelService().getServiceUuid())).isEqualTo(true);
- assertThat(microServiceModelsRepository.existsById(
- loopInDb.getLoopTemplate().getLoopElementModelsUsed().first().getLoopElementModel().getName()))
- .isEqualTo(true);
- assertThat(policyModelsRepository.existsById(new PolicyModelId(
- loopInDb.getLoopTemplate().getLoopElementModelsUsed().first().getLoopElementModel().getPolicyModels()
- .first().getPolicyModelType(),
- loopInDb.getLoopTemplate().getLoopElementModelsUsed().first().getLoopElementModel().getPolicyModels()
- .first().getVersion()))).isEqualTo(true);
-
- // Now attempt to read from database
- Loop loopInDbRetrieved = loopRepository.findById(loopTest.getName()).get();
- assertThat(loopInDbRetrieved).isEqualToIgnoringGivenFields(loopTest, "components", "createdDate", "updatedDate",
- "createdBy", "updatedBy");
- assertThat(loopInDbRetrieved).isEqualToComparingOnlyGivenFields(loopInDb, "createdDate", "updatedDate",
- "createdBy", "updatedBy");
- assertThat((LoopLog) loopInDbRetrieved.getLoopLogs().toArray()[0]).isEqualToComparingFieldByField(loopLog);
- assertThat((OperationalPolicy) loopInDbRetrieved.getOperationalPolicies().toArray()[0])
- .isEqualToIgnoringGivenFields(opPolicy, "createdDate", "updatedDate", "createdBy", "updatedBy");
- Assertions.assertThat(
- ((OperationalPolicy) loopInDbRetrieved.getOperationalPolicies().toArray()[0]).getCreatedDate())
- .isNotNull();
- Assertions.assertThat(
- ((OperationalPolicy) loopInDbRetrieved.getOperationalPolicies().toArray()[0]).getUpdatedDate())
- .isNotNull();
- Assertions.assertThat(
- ((OperationalPolicy) loopInDbRetrieved.getOperationalPolicies().toArray()[0]).getCreatedBy())
- .isNotNull();
- Assertions.assertThat(
- ((OperationalPolicy) loopInDbRetrieved.getOperationalPolicies().toArray()[0]).getUpdatedBy())
- .isNotNull();
-
- assertThat((MicroServicePolicy) loopInDbRetrieved.getMicroServicePolicies().toArray()[0])
- .isEqualToIgnoringGivenFields(microServicePolicy, "createdDate", "updatedDate", "createdBy",
- "updatedBy");
-
- // Attempt an update
- ((LoopLog) loopInDbRetrieved.getLoopLogs().toArray()[0]).setLogInstant(Instant.now());
- loopInDbRetrieved.setLastComputedState(LoopState.RUNNING);
- Loop loopInDbRetrievedUpdated = loopRepository.saveAndFlush(loopInDbRetrieved);
- // Loop loopInDbRetrievedUpdated =
- // loopRepository.findById(loopTest.getName()).get();
- assertThat((LoopLog) loopInDbRetrievedUpdated.getLoopLogs().toArray()[0])
- .isEqualToComparingFieldByField(loopInDbRetrieved.getLoopLogs().toArray()[0]);
- // UpdatedDate should have been changed
- assertThat(loopInDbRetrievedUpdated.getUpdatedDate()).isNotEqualTo(loopInDbRetrievedUpdated.getCreatedDate());
- // createdDate should have NOT been changed
- assertThat(loopInDbRetrievedUpdated.getCreatedDate()).isEqualTo(loopInDb.getCreatedDate());
- // other audit are the same
- assertThat(loopInDbRetrievedUpdated.getCreatedBy()).isEqualTo("Not found");
- assertThat(loopInDbRetrievedUpdated.getUpdatedBy()).isEqualTo("Not found");
-
- // Attempt to delete the object and check it has well been cascaded
-
- loopRepository.delete(loopInDbRetrieved);
- assertThat(loopRepository.existsById(loopTest.getName())).isEqualTo(false);
- assertThat(operationalPolicyService.isExisting(opPolicy.getName())).isEqualTo(false);
- assertThat(microServicePolicyService.isExisting(microServicePolicy.getName())).isEqualTo(true);
- assertThat(loopLogRepository.existsById(loopLog.getId())).isEqualTo(false);
- assertThat(loopTemplateRepository.existsById(loopInDb.getLoopTemplate().getName())).isEqualTo(true);
- assertThat(servicesRepository.existsById(loopInDb.getModelService().getServiceUuid())).isEqualTo(true);
- assertThat(microServiceModelsRepository.existsById(
- loopInDb.getLoopTemplate().getLoopElementModelsUsed().first().getLoopElementModel().getName()))
- .isEqualTo(true);
-
- assertThat(policyModelsRepository.existsById(new PolicyModelId(
- loopInDb.getLoopTemplate().getLoopElementModelsUsed().first().getLoopElementModel().getPolicyModels()
- .first().getPolicyModelType(),
- loopInDb.getLoopTemplate().getLoopElementModelsUsed().first().getLoopElementModel().getPolicyModels()
- .first().getVersion()))).isEqualTo(true);
-
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/LoopServiceTestItCase.java b/src/test/java/org/onap/policy/clamp/loop/LoopServiceTestItCase.java
deleted file mode 100644
index 74092727c..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/LoopServiceTestItCase.java
+++ /dev/null
@@ -1,381 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 Nokia 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonObject;
-import java.util.Set;
-import java.util.stream.Collectors;
-import javax.transaction.Transactional;
-import org.assertj.core.api.Assertions;
-import org.assertj.core.util.Lists;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.loop.log.LogType;
-import org.onap.policy.clamp.loop.log.LoopLog;
-import org.onap.policy.clamp.loop.log.LoopLogService;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.loop.template.PolicyModelsService;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicyService;
-import org.onap.policy.clamp.policy.operational.OperationalPolicy;
-import org.onap.policy.clamp.policy.operational.OperationalPolicyService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class LoopServiceTestItCase {
-
- private static final String EXAMPLE_LOOP_NAME = "ClosedLoopTest";
- private static final String EXAMPLE_JSON = "{\"testName\":\"testValue\"}";
-
- @Autowired
- LoopService loopService;
-
- @Autowired
- LoopsRepository loopsRepository;
-
- @Autowired
- MicroServicePolicyService microServicePolicyService;
-
- @Autowired
- OperationalPolicyService operationalPolicyService;
-
- @Autowired
- LoopLogService loopLogService;
-
- @Autowired
- PolicyModelsService policyModelsService;
-
- @Test
- @Transactional
- public void shouldCreateEmptyLoop() {
- // given
- String loopBlueprint = "blueprint";
- Loop testLoop = createTestLoop(EXAMPLE_LOOP_NAME, loopBlueprint);
- testLoop.setGlobalPropertiesJson(JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class));
- testLoop.setLastComputedState(LoopState.DESIGN);
-
- // when
- Loop actualLoop = loopService.saveOrUpdateLoop(testLoop);
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop).isEqualTo(loopsRepository.findById(actualLoop.getName()).get());
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- assertThat(actualLoop.getGlobalPropertiesJson().getAsJsonPrimitive("testName").getAsString())
- .isEqualTo("testValue");
- }
-
- @Test
- @Transactional
- public void shouldAddOperationalPolicyToLoop() {
- // given
- saveTestLoopToDb();
- OperationalPolicy operationalPolicy = new OperationalPolicy("policyName", null,
- JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null, null);
-
- // when
- Loop actualLoop = loopService.updateAndSaveOperationalPolicies(EXAMPLE_LOOP_NAME,
- Lists.newArrayList(operationalPolicy));
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- Set<OperationalPolicy> savedPolicies = actualLoop.getOperationalPolicies();
- assertThat(savedPolicies).hasSize(1);
- assertThat(savedPolicies)
- .usingElementComparatorIgnoringFields("loop", "createdBy", "createdDate", "updatedBy", "updatedDate")
- .contains(operationalPolicy);
- OperationalPolicy savedPolicy = savedPolicies.iterator().next();
- Assertions.assertThat(savedPolicy.getLoop().getName()).isEqualTo(EXAMPLE_LOOP_NAME);
-
- }
-
- @Test
- @Transactional
- public void shouldAddMicroservicePolicyToLoop() {
- // given
- saveTestLoopToDb();
- PolicyModel policyModel = new PolicyModel("org.policies.policyModel1",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0", "policyModel1");
- policyModelsService.saveOrUpdatePolicyModel(policyModel);
- MicroServicePolicy microServicePolicy = new MicroServicePolicy("policyName", policyModel,
- false, JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
-
- // when
- Loop actualLoop = loopService.updateAndSaveMicroservicePolicies(EXAMPLE_LOOP_NAME,
- Lists.newArrayList(microServicePolicy));
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- Set<MicroServicePolicy> savedPolicies = actualLoop.getMicroServicePolicies();
- assertThat(savedPolicies).hasSize(1);
- assertThat(savedPolicies).usingElementComparatorIgnoringFields("usedByLoops", "createdDate", "updatedDate",
- "createdBy", "updatedBy").containsExactly(microServicePolicy);
- assertThat(savedPolicies).extracting("usedByLoops").hasSize(1);
-
- }
-
- @Test
- @Transactional
- //@Commit
- public void shouldCreateNewMicroservicePolicyAndUpdateJsonRepresentationOfOldOne() {
- // given
- saveTestLoopToDb();
- PolicyModel policyModel1 = new PolicyModel("org.policies.firstPolicyName",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0", "firstPolicyName");
- policyModelsService.saveOrUpdatePolicyModel(policyModel1);
- PolicyModel policyModel2 = new PolicyModel("org.policies.secondPolicyName",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0", "secondPolicyName");
- policyModelsService.saveOrUpdatePolicyModel(policyModel2);
- MicroServicePolicy firstMicroServicePolicy = new MicroServicePolicy("firstPolicyName", policyModel1, false,
- JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
-
- loopService.updateAndSaveMicroservicePolicies(EXAMPLE_LOOP_NAME, Lists.newArrayList(firstMicroServicePolicy));
- MicroServicePolicy secondMicroServicePolicy = new MicroServicePolicy("secondPolicyName", policyModel2, false,
- JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
-
- // when
- firstMicroServicePolicy
- .setConfigurationsJson(JsonUtils.GSON.fromJson("{\"name1\":\"value1\"}", JsonObject.class));
- Loop actualLoop = loopService.updateAndSaveMicroservicePolicies(EXAMPLE_LOOP_NAME,
- Lists.newArrayList(firstMicroServicePolicy, secondMicroServicePolicy));
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- Set<MicroServicePolicy> savedPolicies = actualLoop.getMicroServicePolicies();
- assertThat(savedPolicies).hasSize(2);
- assertThat(savedPolicies).contains(firstMicroServicePolicy);
- assertThat(savedPolicies).contains(secondMicroServicePolicy);
- assertThat(savedPolicies).usingElementComparatorIgnoringFields("usedByLoops", "createdDate", "updatedDate",
- "createdBy", "updatedBy").containsExactlyInAnyOrder(firstMicroServicePolicy, secondMicroServicePolicy);
- }
-
- private void saveTestLoopToDb() {
- Loop testLoop = createTestLoop(EXAMPLE_LOOP_NAME, "blueprint");
- testLoop.setGlobalPropertiesJson(JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class));
- LoopTemplate template = new LoopTemplate();
- template.setName("testTemplate");
- testLoop.setLoopTemplate(template);
- loopService.saveOrUpdateLoop(testLoop);
- }
-
- @Test
- @Transactional
- public void shouldRemoveOldMicroservicePolicyIfNotInUpdatedList() {
- // given
- saveTestLoopToDb();
- PolicyModel policyModel1 = new PolicyModel("org.policies.firstPolicyName",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0", "firstPolicyName");
- policyModelsService.saveOrUpdatePolicyModel(policyModel1);
- PolicyModel policyModel2 = new PolicyModel("org.policies.secondPolicyName",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0", "secondPolicyName");
- policyModelsService.saveOrUpdatePolicyModel(policyModel2);
- MicroServicePolicy firstMicroServicePolicy = new MicroServicePolicy("firstPolicyName", policyModel1,
- false, JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
- loopService.updateAndSaveMicroservicePolicies(EXAMPLE_LOOP_NAME, Lists.newArrayList(firstMicroServicePolicy));
-
- MicroServicePolicy secondMicroServicePolicy = new MicroServicePolicy("secondPolicyName", policyModel2,
- false, JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
-
- // when
- Loop actualLoop = loopService.updateAndSaveMicroservicePolicies(EXAMPLE_LOOP_NAME,
- Lists.newArrayList(secondMicroServicePolicy));
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- Set<MicroServicePolicy> savedPolicies = actualLoop.getMicroServicePolicies();
- assertThat(savedPolicies).hasSize(1);
- assertThat(savedPolicies).usingElementComparatorIgnoringFields("usedByLoops", "createdDate", "updatedDate",
- "createdBy", "updatedBy").containsExactly(secondMicroServicePolicy);
-
- }
-
- @Test
- @Transactional
- public void shouldCreateNewOperationalPolicyAndUpdateJsonRepresentationOfOldOne() {
- // given
- saveTestLoopToDb();
-
- JsonObject newJsonConfiguration = JsonUtils.GSON.fromJson("{}", JsonObject.class);
-
- OperationalPolicy firstOperationalPolicy = new OperationalPolicy("firstPolicyName", null,
- JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null, null);
- loopService.updateAndSaveOperationalPolicies(EXAMPLE_LOOP_NAME, Lists.newArrayList(firstOperationalPolicy));
-
- OperationalPolicy secondOperationalPolicy = new OperationalPolicy("secondPolicyName", null,
- newJsonConfiguration, null, null, null, null);
-
- // when
- firstOperationalPolicy.setConfigurationsJson(newJsonConfiguration);
- Loop actualLoop = loopService.updateAndSaveOperationalPolicies(EXAMPLE_LOOP_NAME,
- Lists.newArrayList(firstOperationalPolicy, secondOperationalPolicy));
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- Set<OperationalPolicy> savedPolicies = actualLoop.getOperationalPolicies();
- assertThat(savedPolicies).hasSize(2);
- assertThat(savedPolicies)
- .usingElementComparatorIgnoringFields("loop", "createdDate", "updatedDate", "createdBy", "updatedBy")
- .containsExactlyInAnyOrder(firstOperationalPolicy, secondOperationalPolicy);
- Set<String> policiesLoops = Lists.newArrayList(savedPolicies).stream().map(OperationalPolicy::getLoop)
- .map(Loop::getName).collect(Collectors.toSet());
- assertThat(policiesLoops).containsExactly(EXAMPLE_LOOP_NAME);
- }
-
- @Test
- @Transactional
- public void shouldRemoveOldOperationalPolicyIfNotInUpdatedList() {
- // given
- saveTestLoopToDb();
-
- OperationalPolicy firstOperationalPolicy = new OperationalPolicy("firstPolicyName", null,
- JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null, null);
- loopService.updateAndSaveOperationalPolicies(EXAMPLE_LOOP_NAME, Lists.newArrayList(firstOperationalPolicy));
-
- OperationalPolicy secondOperationalPolicy = new OperationalPolicy("policyName", null,
- JsonUtils.GSON.fromJson("{}", JsonObject.class), null, null, "pdpGroup1", "pdpSubgroup1");
-
- // when
- Loop actualLoop = loopService.updateAndSaveOperationalPolicies(EXAMPLE_LOOP_NAME,
- Lists.newArrayList(secondOperationalPolicy));
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- Set<OperationalPolicy> savedPolicies = actualLoop.getOperationalPolicies();
- assertThat(savedPolicies).hasSize(1);
- assertThat(savedPolicies)
- .usingElementComparatorIgnoringFields("loop", "createdDate", "updatedDate", "createdBy", "updatedBy")
- .containsExactly(secondOperationalPolicy);
- OperationalPolicy savedPolicy = savedPolicies.iterator().next();
- Assertions.assertThat(savedPolicy.getLoop().getName()).isEqualTo(EXAMPLE_LOOP_NAME);
-
- }
-
- @Test
- @Transactional
- public void shouldCreateModelPropertiesAndUpdateJsonRepresentationOfOldOne() {
- // given
- saveTestLoopToDb();
- String expectedJson = "{\"test\":\"test\"}";
- JsonObject baseGlobalProperites = JsonUtils.GSON.fromJson("{}", JsonObject.class);
- JsonObject updatedGlobalProperites = JsonUtils.GSON.fromJson(expectedJson, JsonObject.class);
- loopService.updateAndSaveGlobalPropertiesJson(EXAMPLE_LOOP_NAME, baseGlobalProperites);
-
- // when
- Loop actualLoop = loopService.updateAndSaveGlobalPropertiesJson(EXAMPLE_LOOP_NAME, updatedGlobalProperites);
-
- // then
- assertThat(actualLoop).isNotNull();
- assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- JsonObject returnedGlobalProperties = actualLoop.getGlobalPropertiesJson();
- assertThat(returnedGlobalProperties.getAsJsonObject()).isEqualTo(updatedGlobalProperites);
- }
-
- @Test
- @Transactional
- public void deleteAttempt() {
- saveTestLoopToDb();
- // Add log
- Loop loop = loopsRepository.findById(EXAMPLE_LOOP_NAME).orElse(null);
- loop.addLog(new LoopLog("test", LogType.INFO, "CLAMP", loop));
- LoopTemplate template = new LoopTemplate();
- template.setName("testTemplate");
- loop.setLoopTemplate(template);
- loop = loopService.saveOrUpdateLoop(loop);
- // Add op policy
- OperationalPolicy operationalPolicy = new OperationalPolicy("opPolicy", null,
- JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null, null);
- loopService.updateAndSaveOperationalPolicies(EXAMPLE_LOOP_NAME, Lists.newArrayList(operationalPolicy));
-
- PolicyModel policyModel = new PolicyModel("org.policies.microPolicy",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0", "microPolicy");
- policyModelsService.saveOrUpdatePolicyModel(policyModel);
- // Add Micro service policy
- MicroServicePolicy microServicePolicy = new MicroServicePolicy("microPolicy", policyModel,
- false, JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
- loopService.updateAndSaveMicroservicePolicies(EXAMPLE_LOOP_NAME, Lists.newArrayList(microServicePolicy));
-
- // Verify it's there
- assertThat(loopsRepository.findById(EXAMPLE_LOOP_NAME).orElse(null)).isNotNull();
- loopService.deleteLoop(EXAMPLE_LOOP_NAME);
- // Verify it's well deleted and has been cascaded, except for Microservice
- assertThat(loopsRepository.findById(EXAMPLE_LOOP_NAME).orElse(null)).isNull();
- assertThat(microServicePolicyService.isExisting("microPolicy")).isTrue();
- assertThat(operationalPolicyService.isExisting("opPolicy")).isFalse();
- assertThat(loopLogService.isExisting(((LoopLog) loop.getLoopLogs().toArray()[0]).getId())).isFalse();
- }
-
- @Test
- @Transactional
- public void testUpdateLoopState() {
- saveTestLoopToDb();
- Loop loop = loopService.getLoop(EXAMPLE_LOOP_NAME);
- loopService.updateLoopState(loop, "SUBMITTED");
- Loop updatedLoop = loopService.getLoop(EXAMPLE_LOOP_NAME);
- assertThat(updatedLoop.getLastComputedState()).isEqualTo(LoopState.SUBMITTED);
- }
-
- @Test
- @Transactional
- public void testUpdateDcaeDeploymentFields() {
- saveTestLoopToDb();
- Loop loop = loopService.getLoop(EXAMPLE_LOOP_NAME);
- loopService.updateDcaeDeploymentFields(loop, "CLAMP_c5ce429a-f570-48c5-a7ea-53bed8f86f85",
- "https://deployment-handler.onap:8443");
- loop = loopService.getLoop(EXAMPLE_LOOP_NAME);
- assertThat(loop.getDcaeDeploymentId()).isEqualTo("CLAMP_c5ce429a-f570-48c5-a7ea-53bed8f86f85");
- assertThat(loop.getDcaeDeploymentStatusUrl()).isEqualTo("https://deployment-handler.onap:8443");
- }
-
- @Test
- @Transactional
- public void testUpdateMicroservicePolicy() {
- saveTestLoopToDb();
- assertThat(microServicePolicyService.isExisting("policyName")).isFalse();
- PolicyModel policyModel = new PolicyModel("org.policies.policyName",
- "tosca_definitions_version: tosca_simple_yaml_1_0_0", "1.0.0", "policyName");
- policyModelsService.saveOrUpdatePolicyModel(policyModel);
- MicroServicePolicy microServicePolicy = new MicroServicePolicy("policyName", policyModel,
- false, JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class), null, null, null);
- loopService.updateMicroservicePolicy(EXAMPLE_LOOP_NAME, microServicePolicy);
- assertThat(microServicePolicyService.isExisting("policyName")).isTrue();
- }
-
- private Loop createTestLoop(String loopName, String loopBlueprint) {
- return new Loop(loopName);
- }
-} \ No newline at end of file
diff --git a/src/test/java/org/onap/policy/clamp/loop/LoopTemplateLoopElementModelTest.java b/src/test/java/org/onap/policy/clamp/loop/LoopTemplateLoopElementModelTest.java
deleted file mode 100644
index 9dcd71ef1..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/LoopTemplateLoopElementModelTest.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2020 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import org.junit.Test;
-import org.onap.policy.clamp.loop.template.LoopElementModel;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.LoopTemplateLoopElementModel;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-
-
-public class LoopTemplateLoopElementModelTest {
-
- private LoopElementModel loopElementModel = getLoopElementModel("yaml", "microService1",
- getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools", "type1"));
- private LoopTemplate loopTemplate = getLoopTemplate("templateName", "yaml", 1);
-
- private LoopElementModel getLoopElementModel(String yaml, String name, PolicyModel policyModel) {
- LoopElementModel model = new LoopElementModel();
- model.setBlueprint(yaml);
- model.setName(name);
- model.addPolicyModel(policyModel);
- model.setLoopElementType("OPERATIONAL_POLICY");
- return model;
- }
-
- private PolicyModel getPolicyModel(String policyType, String policyModelTosca, String version, String policyAcronym,
- String policyVariant) {
- return new PolicyModel(policyType, policyModelTosca, version, policyAcronym);
- }
-
- private LoopTemplate getLoopTemplate(String name, String blueprint, Integer maxInstancesAllowed) {
- LoopTemplate template = new LoopTemplate(name, blueprint, maxInstancesAllowed, null);
- template.addLoopElementModel(loopElementModel);
- return template;
- }
-
- /**
- * This tests compareTo method.
- */
- @Test
- public void compareToTest() {
- LoopTemplateLoopElementModel model1 = new LoopTemplateLoopElementModel();
- LoopTemplateLoopElementModel model2 = new LoopTemplateLoopElementModel();
- assertThat(model1.compareTo(model2)).isEqualTo(1);
-
- model1.setFlowOrder(2);
- assertThat(model1.compareTo(model2)).isEqualTo(-1);
-
- model2.setFlowOrder(3);
- assertThat(model1.compareTo(model2)).isEqualTo(1);
- }
-
- /**
- * This tests equals method.
- */
- @Test
- public void equalsTest() {
- LoopTemplateLoopElementModel model1 = new LoopTemplateLoopElementModel();
- LoopTemplateLoopElementModel model2 = new LoopTemplateLoopElementModel();
-
- assertThat(model1.equals(model2)).isTrue();
-
- model1.setLoopTemplate(loopTemplate);
- assertThat(model1.equals(model2)).isFalse();
- model2.setLoopTemplate(loopTemplate);
- assertThat(model1.equals(model2)).isTrue();
-
- model1.setLoopElementModel(loopElementModel);
- assertThat(model1.equals(model2)).isFalse();
- model2.setLoopElementModel(loopElementModel);
- assertThat(model1.equals(model2)).isTrue();
-
- model1.setFlowOrder(1);
- assertThat(model1.equals(model2)).isTrue();
- model2.setFlowOrder(2);
- assertThat(model1.equals(model2)).isTrue();
- }
-
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/LoopTemplatesServiceItCase.java b/src/test/java/org/onap/policy/clamp/loop/LoopTemplatesServiceItCase.java
deleted file mode 100644
index d608075fc..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/LoopTemplatesServiceItCase.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.jupiter.api.Assertions.assertEquals;
-
-import java.util.List;
-import java.util.SortedSet;
-import javax.transaction.Transactional;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.loop.template.LoopElementModel;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.LoopTemplateLoopElementModel;
-import org.onap.policy.clamp.loop.template.LoopTemplatesService;
-import org.onap.policy.clamp.loop.template.LoopType;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class LoopTemplatesServiceItCase {
-
- @Autowired
- LoopTemplatesService loopTemplatesService;
-
- private static final String POLICY_MODEL_TYPE_1 = "org.onap.test";
- private static final String VERSION = "1.0.0";
-
- private LoopElementModel getLoopElementModel(String yaml, String name, String loopElementType,
- String createdBy, PolicyModel policyModel) {
- LoopElementModel model = new LoopElementModel(name, loopElementType, yaml);
- model.setBlueprint("");
- model.setDcaeBlueprintId("");
- model.addPolicyModel(policyModel);
- return model;
- }
-
- private PolicyModel getPolicyModel(String policyType, String policyModelTosca, String version,
- String policyAcronym, String createdBy) {
- return new PolicyModel(policyType, policyModelTosca, version, policyAcronym);
- }
-
- private LoopTemplate getLoopTemplate(String name, String blueprint, String createdBy, Integer maxInstancesAllowed) {
- LoopTemplate template =
- new LoopTemplate(name, blueprint, maxInstancesAllowed, null);
- template.addLoopElementModel(getLoopElementModel("yaml", "microService1", "MicroService",
- createdBy, getPolicyModel(POLICY_MODEL_TYPE_1, "yaml", VERSION, "MS1", createdBy)));
- template.setAllowedLoopType(LoopType.OPEN);
- return template;
- }
-
- @Test
- @Transactional
- public void shouldSaveOrUpdateLoopTemplate() {
- LoopTemplate loopTemplate = getLoopTemplate("TemplateName", null, "xyz", -1);
- LoopTemplate actualLoopTemplate =
- loopTemplatesService.saveOrUpdateLoopTemplate(loopTemplate);
-
- assertNotNull(actualLoopTemplate);
- assertThat(loopTemplate.getName()).isEqualTo("TemplateName");
- assertThat(loopTemplate.getAllowedLoopType()).isEqualTo(LoopType.OPEN);
- }
-
- @Test
- @Transactional
- public void shouldReturnAllLoopTemplates() {
- LoopTemplate loopTemplate = getLoopTemplate("TemplateName", null, "xyz", -1);
- loopTemplatesService.saveOrUpdateLoopTemplate(loopTemplate);
- List<LoopTemplate> loopTemplateList = loopTemplatesService.getAllLoopTemplates();
-
- assertNotNull(loopTemplateList);
- }
-
- @Test
- @Transactional
- public void shouldReturnLoopTemplateNames() {
- LoopTemplate loopTemplate = getLoopTemplate("TemplateName", null, "xyz", -1);
- loopTemplatesService.saveOrUpdateLoopTemplate(loopTemplate);
- List<String> loopTemplateNames = loopTemplatesService.getLoopTemplateNames();
-
- assertNotNull(loopTemplateNames);
- assertEquals("TemplateName", loopTemplateNames.get(0));
- }
-
- @Test
- @Transactional
- public void shouldReturnLoopTemplate() {
- LoopTemplate loopTemplate = getLoopTemplate("TemplateName", null, "xyz", -1);
- loopTemplatesService.saveOrUpdateLoopTemplate(loopTemplate);
- LoopTemplate actualLoopTemplate = loopTemplatesService.getLoopTemplate("TemplateName");
-
- assertNotNull(actualLoopTemplate);
- assertThat(loopTemplate).isEqualTo(actualLoopTemplate);
- assertThat(loopTemplate.getName()).isEqualTo(actualLoopTemplate.getName());
- assertThat(loopTemplate.getMaximumInstancesAllowed())
- .isEqualTo(actualLoopTemplate.getMaximumInstancesAllowed());
- SortedSet<LoopTemplateLoopElementModel> loopElementModelsUsed =
- loopTemplate.getLoopElementModelsUsed();
- LoopTemplateLoopElementModel loopTemplateLoopElementModel = loopElementModelsUsed.first();
- assertThat(loopTemplateLoopElementModel.getLoopElementModel().getName())
- .isEqualTo("microService1");
- assertThat(loopTemplateLoopElementModel.getLoopTemplate().getName())
- .isEqualTo("TemplateName");
- assertNull(actualLoopTemplate.getBlueprint());
- assertNull(actualLoopTemplate.getModelService());
- }
-
- @Test
- @Transactional
- public void shouldDeleteLoopTemplate() {
- LoopTemplate loopTemplate = getLoopTemplate("TemplateName", null, "xyz", -1);
- loopTemplatesService.saveOrUpdateLoopTemplate(loopTemplate);
- loopTemplatesService.deleteLoopTemplate("TemplateName");
- LoopTemplate actualLoopTemplate = loopTemplatesService.getLoopTemplate("TemplateName");
- assertNull(actualLoopTemplate);
- }
-
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/LoopToJsonTest.java b/src/test/java/org/onap/policy/clamp/loop/LoopToJsonTest.java
deleted file mode 100644
index 0fc4b0b5c..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/LoopToJsonTest.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertNotNull;
-
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonObject;
-import com.google.gson.JsonSyntaxException;
-import java.io.IOException;
-import java.util.Random;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.log.LogType;
-import org.onap.policy.clamp.loop.log.LoopLog;
-import org.onap.policy.clamp.loop.service.Service;
-import org.onap.policy.clamp.loop.template.LoopElementModel;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-import org.onap.policy.clamp.policy.operational.OperationalPolicy;
-
-public class LoopToJsonTest {
-
- private Gson gson = new Gson();
-
- private OperationalPolicy getOperationalPolicy(String configJson, String name) {
- return new OperationalPolicy(name, null, gson.fromJson(configJson, JsonObject.class),
- getPolicyModel("org.onap.policy.drools.legacy", "yaml", "1.0.0", "Drools", "type1"), null, null, null);
- }
-
- private Loop getLoop(String name, String blueprint, String globalPropertiesJson,
- String dcaeId, String dcaeUrl, String dcaeBlueprintId)
- throws JsonSyntaxException, IOException {
- Loop loop = new Loop(name);
- loop.setGlobalPropertiesJson(new Gson().fromJson(globalPropertiesJson, JsonObject.class));
- loop.setLastComputedState(LoopState.DESIGN);
- loop.setDcaeDeploymentId(dcaeId);
- loop.setDcaeDeploymentStatusUrl(dcaeUrl);
- return loop;
- }
-
- private MicroServicePolicy getMicroServicePolicy(String name, String modelType, String jsonRepresentation,
- String policyTosca, String jsonProperties, boolean shared) {
- MicroServicePolicy microService = new MicroServicePolicy(name, new PolicyModel(modelType, policyTosca, "1.0.0"),
- shared,
- gson.fromJson(jsonRepresentation, JsonObject.class), null, null, null);
- microService.setConfigurationsJson(new Gson().fromJson(jsonProperties, JsonObject.class));
- return microService;
- }
-
- private LoopElementModel getLoopElementModel(String yaml, String name, PolicyModel policyModel) {
- LoopElementModel model = new LoopElementModel();
- model.setBlueprint(yaml);
- model.setName(name);
- model.addPolicyModel(policyModel);
- model.setLoopElementType("OPERATIONAL_POLICY");
- return model;
- }
-
- private PolicyModel getPolicyModel(String policyType, String policyModelTosca, String version, String policyAcronym,
- String policyVariant) {
- return new PolicyModel(policyType, policyModelTosca, version, policyAcronym);
- }
-
- private LoopTemplate getLoopTemplate(String name, String blueprint, Integer maxInstancesAllowed) {
- LoopTemplate template = new LoopTemplate(name, blueprint, maxInstancesAllowed, null);
- template.addLoopElementModel(getLoopElementModel("yaml", "microService1",
- getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools", "type1")));
- return template;
- }
-
- private LoopLog getLoopLog(LogType type, String message, Loop loop) {
- LoopLog log = new LoopLog(message, type, "CLAMP", loop);
- log.setId(Long.valueOf(new Random().nextInt()));
- return log;
- }
-
- /**
- * This tests a GSON encode/decode.
- *
- * @throws IOException In case of failure
- */
- @Test
- public void loopGsonTest() throws IOException {
- Loop loopTest = getLoop("ControlLoopTest", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "123456789", "https://dcaetest.org", "UUID-blueprint");
- OperationalPolicy opPolicy = this.getOperationalPolicy(
- ResourceFileUtils.getResourceAsString("tosca/operational-policy-properties.json"), "GuardOpPolicyTest");
- loopTest.addOperationalPolicy(opPolicy);
- MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
- loopTest.addMicroServicePolicy(microServicePolicy);
- LoopLog loopLog = getLoopLog(LogType.INFO, "test message", loopTest);
- loopTest.addLog(loopLog);
- LoopTemplate loopTemplate = getLoopTemplate("templateName", "yaml", 1);
- loopTest.setLoopTemplate(loopTemplate);
-
- String jsonSerialized = JsonUtils.GSON_JPA_MODEL.toJson(loopTest);
- assertThat(jsonSerialized).isNotNull().isNotEmpty();
- System.out.println(jsonSerialized);
- Loop loopTestDeserialized = JsonUtils.GSON_JPA_MODEL.fromJson(jsonSerialized, Loop.class);
- assertNotNull(loopTestDeserialized);
- assertThat(loopTestDeserialized).isEqualToIgnoringGivenFields(loopTest, "svgRepresentation", "blueprint",
- "components");
- assertThat(loopTestDeserialized.getComponent("DCAE").getState())
- .isEqualToComparingFieldByField(loopTest.getComponent("DCAE").getState());
- assertThat(loopTestDeserialized.getComponent("POLICY").getState()).isEqualToComparingOnlyGivenFields(
- loopTest.getComponent("POLICY").getState(), "stateName", "description");
- // blueprint not exposed so wont be deserialized
-
- assertThat(loopTestDeserialized.getOperationalPolicies()).containsExactly(opPolicy);
- assertThat(loopTestDeserialized.getMicroServicePolicies()).containsExactly(microServicePolicy);
- assertThat(loopTestDeserialized.getLoopLogs()).containsExactly(loopLog);
- assertThat((LoopLog) loopTestDeserialized.getLoopLogs().toArray()[0]).isEqualToIgnoringGivenFields(loopLog,
- "loop");
-
- // Verify the loop template
- assertThat(loopTestDeserialized.getLoopTemplate()).isEqualTo(loopTemplate);
- }
-
- /**
- * This tests the service object GSON encode/decode.
- *
- * @throws IOException In case of issues
- */
- @Test
- public void loopServiceTest() throws IOException {
- Loop loopTest2 = getLoop("ControlLoopTest", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "123456789", "https://dcaetest.org", "UUID-blueprint");
-
- JsonObject jsonModel = new GsonBuilder().create()
- .fromJson(ResourceFileUtils.getResourceAsString("tosca/model-properties.json"), JsonObject.class);
- Service service = new Service(jsonModel.get("serviceDetails").getAsJsonObject(),
- jsonModel.get("resourceDetails").getAsJsonObject(), "1.0");
- loopTest2.setModelService(service);
- String jsonSerialized = JsonUtils.GSON_JPA_MODEL.toJson(loopTest2);
- assertThat(jsonSerialized).isNotNull().isNotEmpty();
- System.out.println(jsonSerialized);
-
- Loop loopTestDeserialized = JsonUtils.GSON_JPA_MODEL.fromJson(jsonSerialized, Loop.class);
- assertNotNull(loopTestDeserialized);
- assertThat(loopTestDeserialized).isEqualToIgnoringGivenFields(loopTest2, "modelService", "svgRepresentation",
- "blueprint", "components");
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java b/src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java
deleted file mode 100644
index 5b4e405bb..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/PolicyComponentTest.java
+++ /dev/null
@@ -1,296 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2019, 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.Gson;
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import org.apache.camel.Exchange;
-import org.apache.camel.Message;
-import org.junit.Test;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.components.external.ExternalComponentState;
-import org.onap.policy.clamp.loop.components.external.PolicyComponent;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-import org.onap.policy.clamp.policy.operational.OperationalPolicy;
-import org.skyscreamer.jsonassert.JSONAssert;
-
-public class PolicyComponentTest {
-
- /**
- * Test the computeState method.
- * oldState newState expectedFinalState
- * NOT_SENT SENT_AND_DEPLOYED NOT_SENT
- * NOT_SENT SENT NOT_SENT
- * NOT_SENT NOT_SENT NOT_SENT
- * NOT_SENT IN_ERROR IN_ERROR
- */
- @Test
- public void computeStateTestOriginalStateUnknown() {
- Exchange exchange = Mockito.mock(Exchange.class);
- Message message = Mockito.mock(Message.class);
- Exchange exchange2 = Mockito.mock(Exchange.class);
- Mockito.when(exchange.getIn()).thenReturn(message);
- Mockito.when(message.getExchange()).thenReturn(exchange2);
- // policy found + deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- PolicyComponent policy = new PolicyComponent();
-
- ExternalComponentState state = policy.computeState(exchange);
- assertThat(state.getStateName()).isEqualTo("SENT_AND_DEPLOYED");
- // policy found + not deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state2 = policy.computeState(exchange);
- assertThat(state2.getStateName()).isEqualTo("SENT");
- // policy not found + not deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state4 = policy.computeState(exchange);
- assertThat(state4.getStateName()).isEqualTo("NOT_SENT");
- // policy not found + deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state3 = policy.computeState(exchange);
- assertThat(state3.getStateName()).isEqualTo("IN_ERROR");
- }
-
- /**
- * Test the computeState method.
- * oldState newState expectedFinalState
- * NOT_SENT SENT_AND_DEPLOYED NOT_SENT
- * NOT_SENT SENT NOT_SENT
- * NOT_SENT NOT_SENT NOT_SENT
- * NOT_SENT IN_ERROR IN_ERROR
- */
- @Test
- public void computeStateTestOriginalStateNotSent() {
- Exchange exchange = Mockito.mock(Exchange.class);
- Message message = Mockito.mock(Message.class);
- Exchange exchange2 = Mockito.mock(Exchange.class);
- Mockito.when(exchange.getIn()).thenReturn(message);
- Mockito.when(message.getExchange()).thenReturn(exchange2);
- // policy found + deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- PolicyComponent policy = new PolicyComponent();
- ExternalComponentState notSent = new ExternalComponentState("NOT_SENT",
- "The policies defined have NOT yet been created on the policy engine", 90);
- policy.setState(notSent);
- ExternalComponentState state = policy.computeState(exchange);
- assertThat(state.getStateName()).isEqualTo("NOT_SENT");
- // policy found + not deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state2 = policy.computeState(exchange);
- assertThat(state2.getStateName()).isEqualTo("NOT_SENT");
- // policy not found + not deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state4 = policy.computeState(exchange);
- assertThat(state4.getStateName()).isEqualTo("NOT_SENT");
- // policy not found + deployed
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state3 = policy.computeState(exchange);
- assertThat(state3.getStateName()).isEqualTo("IN_ERROR");
- }
-
-
- /**
- * Test the computeState method.
- * oldState newState expectedFinalState
- * SENT SENT SENT
- * SENT SENT_AND_DEPLOYED SENT
- * SENT IN_ERROR IN_ERROR
- * SENT NOT_SENT NOT_SENT
- */
- @Test
- public void computeStateTestOriginalStateSent() throws IOException {
- Exchange exchange = Mockito.mock(Exchange.class);
- Message message = Mockito.mock(Message.class);
- Exchange exchange2 = Mockito.mock(Exchange.class);
- Mockito.when(exchange.getIn()).thenReturn(message);
- Mockito.when(message.getExchange()).thenReturn(exchange2);
- PolicyComponent policy = new PolicyComponent();
- ExternalComponentState sent = new ExternalComponentState("SENT",
- "The policies defined have been created but NOT deployed on the policy engine", 50);
- policy.setState(sent);
- // new policy state SENT
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state = policy.computeState(exchange);
- assertThat(state.getStateName()).isEqualTo("SENT");
- // new policy state SENT_AND_DEPLOYED
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state2 = policy.computeState(exchange);
- assertThat(state2.getStateName()).isEqualTo("SENT");
- // new policy state IN_ERROR
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state3 = policy.computeState(exchange);
- assertThat(state3.getStateName()).isEqualTo("IN_ERROR");
- // new policy state NOT_SENT
- policy.setState(sent);
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state4 = policy.computeState(exchange);
- assertThat(state4.getStateName()).isEqualTo("NOT_SENT");
- }
-
- /**
- * Test the computeState method.
- * oldState newState expectedFinalState
- * SENT_AND_DEPLOYED SENT_AND_DEPLOYED SENT_AND_DEPLOYED
- * SENT_AND_DEPLOYED SENT SENT
- * SENT_AND_DEPLOYED IN_ERROR IN_ERROR
- * SENT_AND_DEPLOYED NOT_SENT NOT_SENT
- */
- @Test
- public void computeStateTestOriginalStateSentAndDeployed() throws IOException {
- Exchange exchange = Mockito.mock(Exchange.class);
- Message message = Mockito.mock(Message.class);
- Exchange exchange2 = Mockito.mock(Exchange.class);
- Mockito.when(exchange.getIn()).thenReturn(message);
- Mockito.when(message.getExchange()).thenReturn(exchange2);
- PolicyComponent policy = new PolicyComponent();
- ExternalComponentState sendDeployed = new ExternalComponentState("SENT_AND_DEPLOYED",
- "The policies defined have been created and deployed on the policy engine", 10);
- policy.setState(sendDeployed);
- // new policy state SENT_AND_DEPLOYED
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state = policy.computeState(exchange);
- assertThat(state.getStateName()).isEqualTo("SENT_AND_DEPLOYED");
- // new policy state SENT
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state2 = policy.computeState(exchange);
- assertThat(state2.getStateName()).isEqualTo("SENT");
- // new policy state IN_ERROR
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state3 = policy.computeState(exchange);
- assertThat(state3.getStateName()).isEqualTo("IN_ERROR");
- // new policy state NOT_SENT
- policy.setState(sendDeployed);
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state4 = policy.computeState(exchange);
- assertThat(state4.getStateName()).isEqualTo("NOT_SENT");
- }
-
-
- /**
- * Test the computeState method.
- * oldState newState expectedFinalState
- * IN_ERROR SENT_AND_DEPLOYED IN_ERROR
- * IN_ERROR SENT IN_ERROR
- * IN_ERROR IN_ERROR IN_ERROR
- * IN_ERROR NOT_SENT IN_ERROR
- */
- @Test
- public void computeStateTestOriginalStateInError() throws IOException {
- Exchange exchange = Mockito.mock(Exchange.class);
- Message message = Mockito.mock(Message.class);
- Exchange exchange2 = Mockito.mock(Exchange.class);
- Mockito.when(exchange.getIn()).thenReturn(message);
- Mockito.when(message.getExchange()).thenReturn(exchange2);
- PolicyComponent policy = new PolicyComponent();
- ExternalComponentState inError = new ExternalComponentState("IN_ERROR",
- "There was an error during the sending to policy, the policy engine may be corrupted or inconsistent",
- 100);
- policy.setState(inError);
- // new policy state SENT_AND_DEPLOYED
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state = policy.computeState(exchange);
- assertThat(state.getStateName()).isEqualTo("IN_ERROR");
- // new policy state SENT
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(true);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state2 = policy.computeState(exchange);
- assertThat(state2.getStateName()).isEqualTo("IN_ERROR");
- // new policy state IN_ERROR
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(true);
- ExternalComponentState state3 = policy.computeState(exchange);
- assertThat(state3.getStateName()).isEqualTo("IN_ERROR");
- // new policy state NOT_SENT
- Mockito.when(exchange2.getProperty("policyFound")).thenReturn(false);
- Mockito.when(exchange2.getProperty("policyDeployed")).thenReturn(false);
- ExternalComponentState state4 = policy.computeState(exchange);
-
- assertThat(state4.getStateName()).isEqualTo("IN_ERROR");
- }
-
- /**
- * Test the create policies payload PdpGroup test.
- */
- @Test
- public void createPoliciesPayloadPdpGroupTest() throws IOException {
- Loop loopTest = new Loop("ControlLoopTest");
- PolicyModel policyModel1 = new PolicyModel("onap.policies.monitoring.test", null, "1.0.0");
-
- MicroServicePolicy microServicePolicy = new MicroServicePolicy("configPolicyTest", policyModel1, true,
- new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), null, "pdpGroup1", "pdpSubgroup1");
- loopTest.addMicroServicePolicy(microServicePolicy);
-
- MicroServicePolicy microServicePolicy2 = new MicroServicePolicy("configPolicyTest2", policyModel1, true,
- new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), null, "pdpGroup2", "pdpSubgroup1");
- loopTest.addMicroServicePolicy(microServicePolicy2);
-
- PolicyModel policyModel2 = new PolicyModel("onap.policies.monitoring.test2", null,
- "1.0.0");
- OperationalPolicy opPolicy =
- new OperationalPolicy("opPolicy", new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class),
- new Gson().fromJson("{\"jsonschema\":\"schema\"}", JsonObject.class), policyModel2, null,
- "pdpGroup2",
- "pdpSubgroup2");
-
- loopTest.addOperationalPolicy(opPolicy);
- OperationalPolicy opLegacyPolicy =
- new OperationalPolicy("opLegacyPolicy", new Gson().fromJson(
- "{\"guard_policies\":[{\"policy-id\":\"guard1\"}]}", JsonObject.class),
- new Gson().fromJson("{\"jsonschema\":\"schema\"}", JsonObject.class), policyModel2, null,
- "pdpGroup2",
- "pdpSubgroup2");
-
- loopTest.addOperationalPolicy(opLegacyPolicy);
-
- LoopTemplate loopTemplate = new LoopTemplate("test", "yaml", 1, null);
- loopTemplate.setDcaeBlueprintId("UUID-blueprint");
- loopTest.setLoopTemplate(loopTemplate);
-
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("example/policy/pdp-group-policy-payload.json"),
- PolicyComponent.createPoliciesPayloadPdpGroup(loopTest, "POST"), false);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/PolicyModelServiceItCase.java b/src/test/java/org/onap/policy/clamp/loop/PolicyModelServiceItCase.java
deleted file mode 100644
index a2563b8d3..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/PolicyModelServiceItCase.java
+++ /dev/null
@@ -1,300 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019, 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.SortedSet;
-import java.util.TreeSet;
-import java.util.stream.Collectors;
-import javax.transaction.Transactional;
-import org.assertj.core.api.Assertions;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.loop.template.PolicyModelId;
-import org.onap.policy.clamp.loop.template.PolicyModelsRepository;
-import org.onap.policy.clamp.loop.template.PolicyModelsService;
-import org.onap.policy.models.pdp.concepts.PdpGroup;
-import org.onap.policy.models.pdp.concepts.PdpGroups;
-import org.onap.policy.models.pdp.concepts.PdpSubGroup;
-import org.onap.policy.models.pdp.enums.PdpState;
-import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
-import org.skyscreamer.jsonassert.JSONAssert;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class PolicyModelServiceItCase {
-
- @Autowired
- PolicyModelsService policyModelsService;
-
- @Autowired
- PolicyModelsRepository policyModelsRepository;
-
- private static final String POLICY_MODEL_TYPE_1 = "org.onap.testos";
- private static final String POLICY_MODEL_TYPE_1_VERSION_1 = "1.0.0";
-
- private static final String POLICY_MODEL_TYPE_2 = "org.onap.testos2";
- private static final String POLICY_MODEL_TYPE_3 = "org.onap.testos3";
- private static final String POLICY_MODEL_TYPE_2_VERSION_1 = "1.0.0";
- private static final String POLICY_MODEL_TYPE_3_VERSION_1 = "1.0.0";
- private static final String POLICY_MODEL_TYPE_2_VERSION_2 = "2.0.0";
-
- private PolicyModel getPolicyModel(String policyType, String policyModelTosca, String version,
- String policyAcronym, String policyVariant, String createdBy) {
- PolicyModel policyModel = new PolicyModel();
- policyModel.setCreatedBy(createdBy);
- policyModel.setPolicyAcronym(policyAcronym);
- policyModel.setPolicyModelTosca(policyModelTosca);
- policyModel.setPolicyModelType(policyType);
- policyModel.setUpdatedBy(createdBy);
- policyModel.setVersion(version);
- return policyModel;
- }
-
- /**
- * This test the create policy Model.
- */
- @Test
- @Transactional
- public void shouldCreatePolicyModel() {
- // given
- PolicyModel policyModel = getPolicyModel(POLICY_MODEL_TYPE_1, "yaml",
- POLICY_MODEL_TYPE_1_VERSION_1, "TEST", "VARIANT", "user");
-
- // when
- PolicyModel actualPolicyModel = policyModelsService.saveOrUpdatePolicyModel(policyModel);
-
- // then
- assertThat(actualPolicyModel).isNotNull();
- assertThat(actualPolicyModel).isEqualTo(policyModelsRepository
- .findById(new PolicyModelId(actualPolicyModel.getPolicyModelType(),
- actualPolicyModel.getVersion()))
- .get());
- assertThat(actualPolicyModel.getPolicyModelType())
- .isEqualTo(policyModel.getPolicyModelType());
- Assertions.assertThat(actualPolicyModel.getCreatedBy()).isEqualTo("Not found");
- Assertions.assertThat(actualPolicyModel.getCreatedDate()).isNotNull();
- assertThat(actualPolicyModel.getPolicyAcronym()).isEqualTo(policyModel.getPolicyAcronym());
- assertThat(actualPolicyModel.getPolicyModelTosca())
- .isEqualTo(policyModel.getPolicyModelTosca());
- Assertions.assertThat(actualPolicyModel.getUpdatedBy()).isEqualTo("Not found");
- Assertions.assertThat(actualPolicyModel.getUpdatedDate()).isNotNull();
- assertThat(actualPolicyModel.getVersion()).isEqualTo(policyModel.getVersion());
-
- assertThat(
- policyModelsService.getPolicyModel(POLICY_MODEL_TYPE_1, POLICY_MODEL_TYPE_1_VERSION_1))
- .isEqualToIgnoringGivenFields(policyModel, "createdDate", "updatedDate",
- "createdBy", "updatedBy");
- }
-
- /**
- * This tests the getPolicyModelJson. A json is expected.
- *
- * @throws IOException In case of failure
- */
- @Test
- @Transactional
- public void shouldGetPolicyModelInJson() throws IOException {
- PolicyModel policyModel = getPolicyModel("onap.policies.monitoring.cdap.tca.hi.lo.app",
- ResourceFileUtils.getResourceAsString(
- "http-cache/example/policy/api/v1/policytypes/"
- + "onap.policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0/.file"),
- "1.0.0", "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel);
-
- JsonObject policyTypeJson =
- policyModelsService.getPolicyModelJson("onap.policies.monitoring.cdap.tca.hi.lo.app", "1.0.0");
- assertThat(policyTypeJson).isNotNull();
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("tosca/tca_hi_lo.json"),
- policyTypeJson.toString(),
- true);
- }
-
- /**
- * This tests a getAllPolicyModelTypes get.
- */
- @Test
- @Transactional
- public void shouldReturnAllPolicyModelTypes() {
- // given
- PolicyModel policyModel1 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_1, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel1);
- PolicyModel policyModel2 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_2, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel2);
- List<String> policyModelTypesList = policyModelsService.getAllPolicyModelTypes();
-
- assertThat(policyModelTypesList).contains(policyModel1.getPolicyModelType(),
- policyModel2.getPolicyModelType());
- }
-
- /**
- * This tests a getAllPolicyModels get.
- */
- @Test
- @Transactional
- public void shouldReturnAllPolicyModels() {
- PolicyModel policyModel1 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_1, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel1);
- PolicyModel policyModel2 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_2, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel2);
-
- assertThat(policyModelsService.getAllPolicyModels()).contains(policyModel1, policyModel2);
- }
-
- /**
- * This tests a getAllPolicyModelsByType get.
- */
- @Test
- @Transactional
- public void shouldReturnAllModelsByType() {
- PolicyModel policyModel1 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_1, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel1);
- PolicyModel policyModel2 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_2, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel2);
-
- assertThat(policyModelsService.getAllPolicyModelsByType(POLICY_MODEL_TYPE_2))
- .contains(policyModel1, policyModel2);
- }
-
- /**
- * This tests the sorting of policyModel.
- */
- @Test
- @Transactional
- public void shouldReturnSortedSet() {
- PolicyModel policyModel1 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_1, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel1);
- PolicyModel policyModel2 = getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_2, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel2);
- PolicyModel policyModel3 = getPolicyModel(POLICY_MODEL_TYPE_3, "yaml",
- POLICY_MODEL_TYPE_3_VERSION_1, "TEST", "VARIANT", "user");
- policyModelsService.saveOrUpdatePolicyModel(policyModel3);
-
- SortedSet<PolicyModel> sortedSet = new TreeSet<>();
- policyModelsService.getAllPolicyModels().forEach(sortedSet::add);
- List<PolicyModel> listToCheck =
- sortedSet
- .stream().filter(policy -> policy.equals(policyModel3)
- || policy.equals(policyModel2) || policy.equals(policyModel1))
- .collect(Collectors.toList());
- assertThat(listToCheck.get(0)).isEqualByComparingTo(policyModel2);
- assertThat(listToCheck.get(1)).isEqualByComparingTo(policyModel1);
- assertThat(listToCheck.get(2)).isEqualByComparingTo(policyModel3);
- }
-
- /**
- * This tests the pdpgroup GSON encode/decode and saving.
- */
- @Test
- @Transactional
- public void shouldAddPdpGroupInfo() {
- policyModelsService.saveOrUpdatePolicyModel(getPolicyModel(POLICY_MODEL_TYPE_1, "yaml",
- POLICY_MODEL_TYPE_1_VERSION_1, "TEST", "VARIANT", "user"));
- policyModelsService.saveOrUpdatePolicyModel(getPolicyModel(POLICY_MODEL_TYPE_2, "yaml",
- POLICY_MODEL_TYPE_2_VERSION_2, "TEST", "VARIANT", "user"));
- policyModelsService.saveOrUpdatePolicyModel(getPolicyModel(POLICY_MODEL_TYPE_3, "yaml",
- POLICY_MODEL_TYPE_3_VERSION_1, "TEST", "VARIANT", "user"));
-
- ToscaConceptIdentifier type1 = new ToscaConceptIdentifier("org.onap.testos", "1.0.0");
- ToscaConceptIdentifier type2 = new ToscaConceptIdentifier("org.onap.testos2", "2.0.0");
-
- PdpSubGroup pdpSubgroup1 = new PdpSubGroup();
- pdpSubgroup1.setPdpType("subGroup1");
- List<ToscaConceptIdentifier> pdpTypeList = new LinkedList<>();
- pdpTypeList.add(type1);
- pdpTypeList.add(type2);
- pdpSubgroup1.setSupportedPolicyTypes(pdpTypeList);
-
- ToscaConceptIdentifier type3 = new ToscaConceptIdentifier("org.onap.testos3", "2.0.0");
- PdpSubGroup pdpSubgroup2 = new PdpSubGroup();
- pdpSubgroup2.setPdpType("subGroup2");
- List<ToscaConceptIdentifier> pdpTypeList2 = new LinkedList<>();
- pdpTypeList2.add(type2);
- pdpTypeList2.add(type3);
- pdpSubgroup2.setSupportedPolicyTypes(pdpTypeList2);
-
- List<PdpSubGroup> pdpSubgroupList = new LinkedList<>();
- pdpSubgroupList.add(pdpSubgroup1);
-
- PdpGroup pdpGroup1 = new PdpGroup();
- pdpGroup1.setName("pdpGroup1");
- pdpGroup1.setPdpGroupState(PdpState.ACTIVE);
- pdpGroup1.setPdpSubgroups(pdpSubgroupList);
-
- List<PdpSubGroup> pdpSubgroupList2 = new LinkedList<>();
- pdpSubgroupList2.add(pdpSubgroup1);
- pdpSubgroupList2.add(pdpSubgroup2);
- PdpGroup pdpGroup2 = new PdpGroup();
- pdpGroup2.setName("pdpGroup2");
- pdpGroup2.setPdpGroupState(PdpState.ACTIVE);
- pdpGroup2.setPdpSubgroups(pdpSubgroupList2);
-
- List<PdpGroup> pdpGroupsList = new LinkedList<>();
- pdpGroupsList.add(pdpGroup1);
- pdpGroupsList.add(pdpGroup2);
-
- PdpGroups pdpGroups = new PdpGroups();
- pdpGroups.setGroups(pdpGroupsList);
- policyModelsService.updatePdpGroupInfo(pdpGroups);
-
- JsonObject res1 =
- policyModelsService.getPolicyModel("org.onap.testos", "1.0.0").getPolicyPdpGroup();
- String expectedRes1 =
- "{\"supportedPdpGroups\":[{\"pdpGroup1\":[\"subGroup1\"]},{\"pdpGroup2\":[\"subGroup1\"]}]}";
- JsonObject expectedJson1 = JsonUtils.GSON.fromJson(expectedRes1, JsonObject.class);
- assertThat(res1).isEqualTo(expectedJson1);
-
- JsonObject res2 =
- policyModelsService.getPolicyModel("org.onap.testos2", "2.0.0").getPolicyPdpGroup();
- String expectedRes2 =
- "{\"supportedPdpGroups\":[{\"pdpGroup1\":[\"subGroup1\"]},"
- + "{\"pdpGroup2\":[\"subGroup1\",\"subGroup2\"]}]}";
- JsonObject expectedJson2 = JsonUtils.GSON.fromJson(expectedRes2, JsonObject.class);
- assertThat(res2).isEqualTo(expectedJson2);
-
- JsonObject res3 =
- policyModelsService.getPolicyModel("org.onap.testos3", "1.0.0").getPolicyPdpGroup();
- assertThat(res3).isNull();
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/ServiceTest.java b/src/test/java/org/onap/policy/clamp/loop/ServiceTest.java
deleted file mode 100644
index 8f28299fd..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/ServiceTest.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonObject;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.loop.service.Service;
-
-public class ServiceTest {
-
- @Test
- public void equalMethodTest() {
- String serviceStr1 = "{\"name\": \"vLoadBalancerMS\", \"UUID\": \"63cac700-ab9a-4115-a74f-7eac85e3fce0\"}";
- String serviceStr2 = "{\"name\": \"vLoadBalancerMS2\", \"UUID\": \"63cac700-ab9a-4115-a74f-7eac85e3fce0\"}";
- String serviceStr3 = "{\"name\": \"vLoadBalancerMS\",\"UUID\": \"63cac700-ab9a-4115-a74f-7eac85e3fc11\"}";
- String resourceStr = "{\"CP\": {}}";
-
- Service service1 = new Service(JsonUtils.GSON.fromJson(serviceStr1, JsonObject.class),
- JsonUtils.GSON.fromJson(resourceStr, JsonObject.class), "1.0");
-
- Service service2 = new Service(JsonUtils.GSON.fromJson(serviceStr2, JsonObject.class), null, "1.0");
-
- Service service3 = new Service(JsonUtils.GSON.fromJson(serviceStr3, JsonObject.class),
- JsonUtils.GSON.fromJson(resourceStr, JsonObject.class), "1.0");
-
- assertThat(service1.equals(service2)).isEqualTo(true);
- assertThat(service1.equals(service3)).isEqualTo(false);
- }
-
-}
diff --git a/src/test/java/org/onap/policy/clamp/loop/deploy/BlueprintInputParametersTest.java b/src/test/java/org/onap/policy/clamp/loop/deploy/BlueprintInputParametersTest.java
deleted file mode 100644
index f7f6baa0c..000000000
--- a/src/test/java/org/onap/policy/clamp/loop/deploy/BlueprintInputParametersTest.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights
- * reserved.
- * ================================================================================
- * Modifications copyright (c) 2019 Nokia
- * Modifications Copyright (c) 2019 Samsung
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.loop.deploy;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.util.LinkedHashSet;
-import org.junit.Assert;
-import org.junit.Test;
-import org.mockito.Mockito;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.Loop;
-import org.onap.policy.clamp.loop.template.LoopElementModel;
-import org.onap.policy.clamp.loop.template.LoopTemplate;
-import org.onap.policy.clamp.policy.microservice.MicroServicePolicy;
-import org.onap.sdc.tosca.parser.exceptions.SdcToscaParserException;
-
-public class BlueprintInputParametersTest {
-
- /**
- * getDeploymentParametersinJsonMultiBlueprintsTest.
- *
- * @throws IOException in case of failure
- * @throws SdcToscaParserException in case of failure
- */
- @Test
- public void getDeploymentParametersinJsonMultiBlueprintsTest() throws IOException, SdcToscaParserException {
-
-
- MicroServicePolicy umService1 = Mockito.mock(MicroServicePolicy.class);
- Mockito.when(umService1.getName()).thenReturn("testName1");
-
- LoopElementModel loopElement = Mockito.mock(LoopElementModel.class);
- String blueprint1 = ResourceFileUtils.getResourceAsString("example/sdc/blueprint-dcae/tca.yaml");
- Mockito.when(loopElement.getBlueprint()).thenReturn(blueprint1);
- Mockito.when(umService1.getLoopElementModel()).thenReturn(loopElement);
-
- MicroServicePolicy umService2 = Mockito.mock(MicroServicePolicy.class);
- Mockito.when(umService2.getName()).thenReturn("testName2");
-
- LoopElementModel loopElement2 = Mockito.mock(LoopElementModel.class);
- String blueprint2 = ResourceFileUtils.getResourceAsString("example/sdc/blueprint-dcae/tca_2.yaml");
- Mockito.when(loopElement2.getBlueprint()).thenReturn(blueprint2);
- Mockito.when(umService2.getLoopElementModel()).thenReturn(loopElement2);
-
- MicroServicePolicy umService3 = Mockito.mock(MicroServicePolicy.class);
- Mockito.when(umService3.getName()).thenReturn("testName3");
-
- LoopElementModel loopElement3 = Mockito.mock(LoopElementModel.class);
- String blueprint3 = ResourceFileUtils.getResourceAsString("example/sdc/blueprint-dcae/tca_3.yaml");
- Mockito.when(loopElement3.getBlueprint()).thenReturn(blueprint3);
- Mockito.when(umService3.getLoopElementModel()).thenReturn(loopElement3);
-
- LinkedHashSet<MicroServicePolicy> umServiceSet = new LinkedHashSet<>();
- umServiceSet.add(umService1);
- umServiceSet.add(umService2);
- umServiceSet.add(umService3);
- Loop loop = Mockito.mock(Loop.class);
- Mockito.when(loop.getMicroServicePolicies()).thenReturn(umServiceSet);
-
- LoopTemplate template = Mockito.mock(LoopTemplate.class);
- Mockito.when(template.getUniqueBlueprint()).thenReturn(false);
- Mockito.when(loop.getLoopTemplate()).thenReturn(template);
-
- JsonObject paramJson = DcaeDeployParameters.getDcaeDeploymentParametersInJson(loop);
-
- Assert.assertEquals(JsonUtils.GSON_JPA_MODEL.toJson(paramJson),
- ResourceFileUtils.getResourceAsString(
- "example/sdc/expected-result/deployment-parameters-multi-blueprints.json"));
- }
-
- /**
- * getDeploymentParametersInJsonSingleBlueprintTest.
- *
- * @throws IOException In case of failure
- * @throws SdcToscaParserException In case of failure
- */
- @Test
- public void getDeploymentParametersInJsonSingleBlueprintTest() throws IOException, SdcToscaParserException {
- Loop loop = Mockito.mock(Loop.class);
-
- MicroServicePolicy umService1 = Mockito.mock(MicroServicePolicy.class);
- Mockito.when(umService1.getName()).thenReturn("testName1");
- LinkedHashSet<MicroServicePolicy> umServiceSet = new LinkedHashSet<MicroServicePolicy>();
- umServiceSet.add(umService1);
- Mockito.when(loop.getMicroServicePolicies()).thenReturn(umServiceSet);
-
- LoopTemplate template = Mockito.mock(LoopTemplate.class);
- Mockito.when(template.getUniqueBlueprint()).thenReturn(true);
- String blueprint = ResourceFileUtils.getResourceAsString("example/sdc/blueprint-dcae/tca.yaml");
- Mockito.when(template.getBlueprint()).thenReturn(blueprint);
- Mockito.when(loop.getLoopTemplate()).thenReturn(template);
-
- JsonObject paramJson = DcaeDeployParameters.getDcaeDeploymentParametersInJson(loop);
-
- Assert.assertEquals(JsonUtils.GSON_JPA_MODEL.toJson(paramJson),
- ResourceFileUtils.getResourceAsString(
- "example/sdc/expected-result/deployment-parameters-single-blueprint.json"));
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/policy/downloader/PolicyEngineControllerTestItCase.java b/src/test/java/org/onap/policy/clamp/policy/downloader/PolicyEngineControllerTestItCase.java
deleted file mode 100644
index 657adf1d1..000000000
--- a/src/test/java/org/onap/policy/clamp/policy/downloader/PolicyEngineControllerTestItCase.java
+++ /dev/null
@@ -1,117 +0,0 @@
-package org.onap.policy.clamp.policy.downloader;
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonObject;
-import com.google.gson.JsonSyntaxException;
-import java.io.IOException;
-import java.time.Instant;
-import java.util.List;
-import javax.transaction.Transactional;
-import org.json.simple.parser.ParseException;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.clamp.loop.template.PolicyModelId;
-import org.onap.policy.clamp.loop.template.PolicyModelsRepository;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.ActiveProfiles;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-@ActiveProfiles({"clamp-default", "clamp-policy-controller"})
-public class PolicyEngineControllerTestItCase {
-
- @Autowired
- PolicyEngineController policyController;
-
- @Autowired
- PolicyModelsRepository policyModelsRepository;
-
- /**
- * This method tests a fake synchronization with the emulator.
- *
- * @throws JsonSyntaxException In case of issues
- * @throws IOException In case of issues
- * @throws InterruptedException In case of issues
- */
- @Test
- @Transactional
- public void synchronizeAllPoliciesTest() throws JsonSyntaxException, IOException, InterruptedException {
- policyController.synchronizeAllPolicies();
- Instant firstExecution = policyController.getLastInstantExecuted();
- assertThat(firstExecution).isNotNull();
- List<PolicyModel> policyModelsList = policyModelsRepository.findAll();
- assertThat(policyModelsList.size()).isGreaterThanOrEqualTo(5);
- assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.operational.common.Drools",
- null, "1.0.0"));
- assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.operational.common.Apex",
- null, "1.0.0"));
- assertThat(policyModelsList)
- .contains(new PolicyModel("onap.policies.controlloop.guard.common.FrequencyLimiter", null, "1.0.0"));
- assertThat(policyModelsList)
- .contains(new PolicyModel("onap.policies.controlloop.guard.common.Blacklist", null, "1.0.0"));
- assertThat(policyModelsList)
- .contains(new PolicyModel("onap.policies.controlloop.guard.common.MinMax", null, "2.0.0"));
-
- // Re-do it to check that there is no issue with duplicate key
- policyController.synchronizeAllPolicies();
- Instant secondExecution = policyController.getLastInstantExecuted();
- assertThat(secondExecution).isNotNull();
-
- assertThat(firstExecution).isBefore(secondExecution);
- }
-
- @Test
- @Transactional
- public void downloadPdpGroupsTest() throws JsonSyntaxException, IOException, InterruptedException, ParseException {
- PolicyModel policyModel1 = new PolicyModel("onap.policies.monitoring.test", null, "1.0.0");
- policyModelsRepository.saveAndFlush(policyModel1);
- PolicyModel policyModel2 = new PolicyModel("onap.policies.controlloop.Operational", null, "1.0.0");
- policyModelsRepository.saveAndFlush(policyModel2);
-
- policyController.downloadPdpGroups();
-
- List<PolicyModel> policyModelsList = policyModelsRepository.findAll();
- assertThat(policyModelsList.size()).isGreaterThanOrEqualTo(2);
-
- PolicyModel policy1 = policyModelsRepository
- .getOne(new PolicyModelId("onap.policies.monitoring.test", "1.0.0"));
- PolicyModel policy2 = policyModelsRepository
- .getOne(new PolicyModelId("onap.policies.controlloop.Operational", "1.0.0"));
-
- String expectedRes1 = "{\"supportedPdpGroups\":[{\"monitoring\":[\"xacml\"]}]}";
- JsonObject expectedJson1 = JsonUtils.GSON.fromJson(expectedRes1, JsonObject.class);
- assertThat(policy1.getPolicyPdpGroup()).isEqualTo(expectedJson1);
- String expectedRes2 = "{\"supportedPdpGroups\":[{\"controlloop\":[\"apex\",\"drools\"]}]}";
- JsonObject expectedJson2 = JsonUtils.GSON.fromJson(expectedRes2, JsonObject.class);
- assertThat(policy2.getPolicyPdpGroup()).isEqualTo(expectedJson2);
-
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/policy/microservice/MicroServicePayloadTest.java b/src/test/java/org/onap/policy/clamp/policy/microservice/MicroServicePayloadTest.java
deleted file mode 100644
index 4bb850c35..000000000
--- a/src/test/java/org/onap/policy/clamp/policy/microservice/MicroServicePayloadTest.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.policy.microservice;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.skyscreamer.jsonassert.JSONAssert;
-
-public class MicroServicePayloadTest {
-
- @Test
- public void testPayloadConstruction() throws IOException {
- MicroServicePolicy policy = new MicroServicePolicy("testPolicy", new PolicyModel(
- "onap.policies.monitoring.cdap.tca.hi.lo.app",
- ResourceFileUtils.getResourceAsString("tosca/tosca_example.yaml"), "1.0.0"), false, null, null, null,
- null);
- policy.setConfigurationsJson(JsonUtils.GSON.fromJson(
- ResourceFileUtils.getResourceAsString("tosca/micro-service-policy-properties.json"), JsonObject.class));
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("tosca/micro-service-policy-payload.json"),
- policy.createPolicyPayload(), false);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/policy/operational/OperationalPolicyRepresentationBuilderTest.java b/src/test/java/org/onap/policy/clamp/policy/operational/OperationalPolicyRepresentationBuilderTest.java
deleted file mode 100644
index 136430c8f..000000000
--- a/src/test/java/org/onap/policy/clamp/policy/operational/OperationalPolicyRepresentationBuilderTest.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.policy.operational;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.service.Service;
-import org.skyscreamer.jsonassert.JSONAssert;
-
-public class OperationalPolicyRepresentationBuilderTest {
-
- @Test
- public void testOperationalPolicyPayloadConstruction() throws IOException {
- JsonObject jsonModel = new GsonBuilder().create().fromJson(ResourceFileUtils
- .getResourceAsString("tosca/model-properties-operational-policy.json"), JsonObject.class);
- Service service = new Service(jsonModel.get("serviceDetails").getAsJsonObject(),
- jsonModel.get("resourceDetails").getAsJsonObject(), "1.0");
-
- JsonObject jsonSchema = OperationalPolicyRepresentationBuilder.generateOperationalPolicySchema(service);
-
- assertThat(jsonSchema).isNotNull();
-
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("tosca/operational-policy-json-schema.json"),
- new GsonBuilder().create().toJson(jsonSchema), false);
- }
-
- @Test
- public void testOperationalPolicyPayloadConstructionForCds() throws IOException {
- JsonObject jsonModel = new GsonBuilder().create()
- .fromJson(ResourceFileUtils.getResourceAsString("tosca/model-properties-cds.json"), JsonObject.class);
- Service service = new Service(jsonModel.get("serviceDetails").getAsJsonObject(),
- jsonModel.get("resourceDetails").getAsJsonObject(),
- "1.0");
-
- JsonObject jsonSchema = OperationalPolicyRepresentationBuilder.generateOperationalPolicySchema(service);
- assertThat(jsonSchema).isNotNull();
- JSONAssert.assertEquals(
- ResourceFileUtils.getResourceAsString("tosca/operational-policy-cds-payload-with-list.json"),
- new GsonBuilder().create().toJson(jsonSchema), false);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupAnalyzerTest.java b/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupAnalyzerTest.java
deleted file mode 100644
index 30d4ebe28..000000000
--- a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupAnalyzerTest.java
+++ /dev/null
@@ -1,231 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.policy.pdpgroup;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.clamp.loop.template.PolicyModel;
-import org.onap.policy.models.pdp.concepts.PdpGroup;
-import org.onap.policy.models.pdp.concepts.PdpGroups;
-import org.onap.policy.models.pdp.concepts.PdpSubGroup;
-import org.onap.policy.models.pdp.enums.PdpState;
-import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
-
-/**
- * This test class validates the PdpGroupAnalyzer class.
- */
-public class PdpGroupAnalyzerTest {
-
- private static PdpGroups pdpGroups;
- private static PdpGroup pdpGroup1;
- private static PdpGroup pdpGroup2;
- private static PdpGroup pdpGroup3;
- private static PdpGroup pdpGroup4;
-
- private static PdpSubGroup pdpSubgroupBad;
- private static PdpSubGroup pdpSubgroup1;
- private static PdpSubGroup pdpSubgroup2;
- private static PdpSubGroup pdpSubgroup3;
-
- /**
- * This method preloads the pdpGroups for the tests.
- */
- @BeforeClass
- public static void setupPdpGroup() {
- // Create Pdp Groups
- // Those that do not work first
- pdpSubgroupBad = new PdpSubGroup();
- pdpSubgroupBad.setPdpType("subGroupBad");
- pdpSubgroupBad.setSupportedPolicyTypes(Arrays.asList(new ToscaConceptIdentifier("org.onap.test", "2.0.0"),
- new ToscaConceptIdentifier("org.onap.test.*", "1.0.0"),
- new ToscaConceptIdentifier("org.onip.testos", "1.0.0"),
- new ToscaConceptIdentifier("org.onap.testos3", "2.0.0"),
- new ToscaConceptIdentifier("org.onap.tes", "1.0.0"),
- new ToscaConceptIdentifier("org.onap", "1.0.0")
- ));
- pdpSubgroupBad.setPolicies(Arrays.asList(new ToscaConceptIdentifier("org.onap", "1.0.0"),
- new ToscaConceptIdentifier("org.onap.testos", "2.0.0"),
- new ToscaConceptIdentifier("org.onap.testos", "1.0.1"),
- new ToscaConceptIdentifier("org.onap.testos.new", "1.0.0"),
- new ToscaConceptIdentifier("org.onap.", "1.0.0")));
- pdpSubgroupBad.setPdpInstances(Collections.emptyList());
-
- pdpSubgroup1 = new PdpSubGroup();
- pdpSubgroup1.setPdpType("subGroup1");
- pdpSubgroup1.setSupportedPolicyTypes(
- Arrays.asList(new ToscaConceptIdentifier("org.onap.*", "1.0.0")));
- pdpSubgroup1.setPdpInstances(Collections.emptyList());
-
- pdpSubgroup2 = new PdpSubGroup();
- pdpSubgroup2.setPdpType("subGroup2");
- pdpSubgroup2.setSupportedPolicyTypes(Arrays.asList(new ToscaConceptIdentifier("org.onap.test", "1.0.0")));
- pdpSubgroup2.setPolicies(Arrays.asList(new ToscaConceptIdentifier("org.onap.testos", "1.0.0")));
- pdpSubgroup2.setPdpInstances(Collections.emptyList());
-
- pdpSubgroup3 = new PdpSubGroup();
- pdpSubgroup3.setPdpType("subGroup3");
- pdpSubgroup3.setSupportedPolicyTypes(Arrays.asList(new ToscaConceptIdentifier("org.onap.test*", "1.0.0")));
- pdpSubgroup3.setPolicies(Arrays.asList(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")));
- pdpSubgroup3.setPdpInstances(Collections.emptyList());
-
- // Should match pdpSubgroup1
- pdpGroup1 = new PdpGroup();
- pdpGroup1.setName("pdpGroup1");
- pdpGroup1.setPdpGroupState(PdpState.ACTIVE);
- pdpGroup1.setPdpSubgroups(Arrays.asList(pdpSubgroup1, pdpSubgroupBad));
-
- // Should match pdpSubgroup1, pdpSubgroup2, pdpSubgroup3
- // Should match also for the policy (pdpSubgroup2)
- pdpGroup2 = new PdpGroup();
- pdpGroup2.setName("pdpGroup2");
- pdpGroup2.setPdpGroupState(PdpState.ACTIVE);
- pdpGroup2.setPdpSubgroups(Arrays.asList(pdpSubgroup1, pdpSubgroup2, pdpSubgroup3, pdpSubgroupBad));
-
- /// Should not match
- pdpGroup3 = new PdpGroup();
- pdpGroup3.setName("pdpGroup3");
- pdpGroup3.setPdpGroupState(PdpState.ACTIVE);
- pdpGroup3.setPdpSubgroups(Arrays.asList(pdpSubgroupBad));
-
- // Should not match
- pdpGroup4 = new PdpGroup();
- pdpGroup4.setName("pdpGroup4");
- pdpGroup4.setPdpGroupState(PdpState.TERMINATED);
- pdpGroup4.setPdpSubgroups(Arrays.asList(pdpSubgroup1));
-
- pdpGroups = new PdpGroups();
- pdpGroups.setGroups(Arrays.asList(pdpGroup1, pdpGroup2, pdpGroup3, pdpGroup4));
- }
-
- @Test
- public void testStructuresConstruction() {
- PdpGroupsAnalyzer pdpGroupsAnalyzer = new PdpGroupsAnalyzer(pdpGroups);
- assertThat(pdpGroupsAnalyzer).isNotNull();
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()).hasSize(6);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0"))).hasSize(3);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")).get("pdpGroup1").getPdpSubgroups().size())
- .isEqualTo(1);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")).get("pdpGroup1").getPdpSubgroups())
- .contains(pdpSubgroupBad);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")).get("pdpGroup2").getPdpSubgroups().size())
- .isEqualTo(2);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")).get("pdpGroup2").getPdpSubgroups())
- .contains(pdpSubgroup3);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")).get("pdpGroup2").getPdpSubgroups())
- .contains(pdpSubgroupBad);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")).get("pdpGroup3").getPdpSubgroups().size())
- .isEqualTo(1);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "2.0.0")).get("pdpGroup3").getPdpSubgroups())
- .contains(pdpSubgroupBad);
-
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.0"))).hasSize(1);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.0")).get("pdpGroup2").getPdpSubgroups())
- .hasSize(1);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.0")).get("pdpGroup2").getPdpSubgroups())
- .contains(pdpSubgroup2);
-
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.1"))).hasSize(3);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.1")).get("pdpGroup1").getPdpSubgroups())
- .hasSize(1);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.1")).get("pdpGroup1").getPdpSubgroups())
- .contains(pdpSubgroupBad);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.1")).get("pdpGroup2").getPdpSubgroups())
- .hasSize(1);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.1")).get("pdpGroup2").getPdpSubgroups())
- .contains(pdpSubgroupBad);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.1")).get("pdpGroup3").getPdpSubgroups())
- .hasSize(1);
- assertThat(pdpGroupsAnalyzer.getPdpGroupsDeploymentPerPolicy()
- .get(new ToscaConceptIdentifier("org.onap.testos", "1.0.1")).get("pdpGroup3").getPdpSubgroups())
- .contains(pdpSubgroupBad);
- }
-
- @Test
- public void testGetSupportedPdpGroupsForPolicy() throws IOException {
- PolicyModel policyModel = new PolicyModel();
- policyModel.setCreatedBy("user");
- policyModel.setPolicyAcronym("TEST");
- policyModel.setPolicyModelTosca("yaml");
- policyModel.setPolicyModelType("org.onap.test");
- policyModel.setUpdatedBy("user");
- policyModel.setVersion("1.0.0");
-
- PdpGroupsAnalyzer pdpGroupsAnalyzer = new PdpGroupsAnalyzer(pdpGroups);
- assertThat(pdpGroupsAnalyzer).isNotNull();
-
- assertThat(
- JsonUtils.GSON.toJson(pdpGroupsAnalyzer.getPdpGroupsForPolicy("org.onap.testos", "2.0.0")))
- .isEqualTo(ResourceFileUtils.getResourceAsString("example/policy/pdp-deployment-testos-2_0_0.json"));
-
- assertThat(
- JsonUtils.GSON.toJson(pdpGroupsAnalyzer.getPdpGroupsForPolicy("org.onap.testos", "1.0.0")))
- .isEqualTo(ResourceFileUtils.getResourceAsString("example/policy/pdp-deployment-testos-1_0_0.json"));
-
- assertThat(
- pdpGroupsAnalyzer.getPdpGroupsForPolicy("org.onap.donotexist", "1.0.0"))
- .isNull();
- }
-
- @Test
- public void testUpdatePdpGroupOfPolicyModels() {
- // Create policyModel
- PolicyModel policyModel = new PolicyModel();
- policyModel.setCreatedBy("user");
- policyModel.setPolicyAcronym("TEST");
- policyModel.setPolicyModelTosca("yaml");
- policyModel.setPolicyModelType("org.onap.test");
- policyModel.setUpdatedBy("user");
- policyModel.setVersion("1.0.0");
- PdpGroupsAnalyzer.updatePdpGroupOfPolicyModels(Arrays.asList(policyModel), pdpGroups);
-
- assertThat(policyModel.getPolicyPdpGroup()).hasToString(
- "{\"supportedPdpGroups\":[{\"pdpGroup1\":[\"subGroup1\"]},"
- + "{\"pdpGroup2\":[\"subGroup1\",\"subGroup2\",\"subGroup3\"]}]}");
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadExceptionTest.java b/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadExceptionTest.java
deleted file mode 100644
index f3c3fc6cd..000000000
--- a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadExceptionTest.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2021 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.
- * ============LICENSE_END=========================================================
- */
-
-package org.onap.policy.clamp.policy.pdpgroup;
-
-import org.junit.Test;
-import org.onap.policy.clamp.policy.pdpgroup.PdpGroupPayloadException;
-import org.onap.policy.common.utils.test.ExceptionsTester;
-
-public class PdpGroupPayloadExceptionTest extends ExceptionsTester {
-
- @Test
- public void testPdpGroupPayloadException() {
- test(PdpGroupPayloadException.class);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadTest.java b/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadTest.java
deleted file mode 100644
index 34674e3ec..000000000
--- a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PdpGroupPayloadTest.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.policy.pdpgroup;
-
-import com.google.gson.JsonArray;
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.skyscreamer.jsonassert.JSONAssert;
-
-/**
- * This class tests the PdpGroupPayload features.
- */
-public class PdpGroupPayloadTest {
-
- @Test
- public void testGeneratePdpGroupPayload() throws IOException, PdpGroupPayloadException {
- JsonArray operations = new JsonArray();
- operations.add("POST/pdpgroup1/pdpsubgroup1/policyname1/1.0.0");
- operations.add("POST/pdpgroup1/pdpsubgroup1/policyname2/1.0.0");
- operations.add("POST/pdpgroup1/pdpsubgroup1/policyname1/2.0.0");
- operations.add("DELETE/pdpgroup2/pdpsubgroup2/policyname1/1.0.0");
- operations.add("POST/pdpgroup2/pdpsubgroup2/policyname1/2.0.0");
- operations.add("DELETE/pdpgroup2/pdpsubgroup2/policyname2/1.0.0");
- JsonObject listOfOperations = new JsonObject();
- listOfOperations.add(PdpGroupPayload.PDP_ACTIONS, operations);
-
- PdpGroupPayload pdpGroupPayload = new PdpGroupPayload(listOfOperations);
- JSONAssert.assertEquals(
- ResourceFileUtils.getResourceAsString("example/policy/pdp-group-multi-policies-payload.json"),
- pdpGroupPayload.generatePdpGroupPayload(), false);
- }
-
- @Test
- public void testGeneratePdpGroupPayload_WithEmptyList() throws PdpGroupPayloadException {
- JsonArray operations = new JsonArray();
- JsonObject listOfOperations = new JsonObject();
- listOfOperations.add(PdpGroupPayload.PDP_ACTIONS, operations);
-
- PdpGroupPayload pdpGroupPayload = new PdpGroupPayload(listOfOperations);
- JSONAssert.assertEquals("{}", pdpGroupPayload.generatePdpGroupPayload(), false);
- }
-
- @Test(expected = PdpGroupPayloadException.class)
- public void testUpdatePdpGroupMap_WithEmptyEntry() throws PdpGroupPayloadException {
- JsonArray operations = new JsonArray();
- operations.add("");
- JsonObject listOfOperations = new JsonObject();
- listOfOperations.add(PdpGroupPayload.PDP_ACTIONS, operations);
-
- PdpGroupPayload pdpGroupPayload = new PdpGroupPayload(listOfOperations);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PoliciesPdpMergerTest.java b/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PoliciesPdpMergerTest.java
deleted file mode 100644
index be7a9d674..000000000
--- a/src/test/java/org/onap/policy/clamp/policy/pdpgroup/PoliciesPdpMergerTest.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.policy.pdpgroup;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.util.Arrays;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.onap.policy.clamp.clds.util.JsonUtils;
-import org.onap.policy.clamp.clds.util.ResourceFileUtils;
-import org.onap.policy.models.pdp.concepts.PdpGroup;
-import org.onap.policy.models.pdp.concepts.PdpGroups;
-import org.onap.policy.models.pdp.concepts.PdpSubGroup;
-import org.onap.policy.models.pdp.enums.PdpState;
-import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
-import org.skyscreamer.jsonassert.JSONAssert;
-
-/**
- * This test class validates the PdpGroupAnalyzer class.
- */
-public class PoliciesPdpMergerTest {
-
- private static String pdpGroupsJson;
-
- /**
- * This method setups the pdpGroups required for the tests.
- */
- @BeforeClass
- public static void setupPdpGroup() {
- // Create Pdp Groups
- PdpSubGroup pdpSubgroup1 = new PdpSubGroup();
- pdpSubgroup1.setPdpType("subGroup1");
- pdpSubgroup1.setSupportedPolicyTypes(
- Arrays.asList(new ToscaConceptIdentifier("org.onap.*", "1.0.0")));
-
- PdpSubGroup pdpSubgroup2 = new PdpSubGroup();
- pdpSubgroup2.setPdpType("subGroup2");
- pdpSubgroup2.setSupportedPolicyTypes(
- Arrays.asList(new ToscaConceptIdentifier("onap.policies.monitoring.tcagen2", "1.0.0"),
- new ToscaConceptIdentifier("onap.policies.controlloop.operational.common.Drools", "1.0.0")));
- pdpSubgroup2.setPolicies(Arrays.asList(
- new ToscaConceptIdentifier("MICROSERVICE_vLoadBalancerMS_v1_0_tcagen2_1_0_0_AV0", "1.0.0")));
-
- PdpSubGroup pdpSubgroup3 = new PdpSubGroup();
- pdpSubgroup3.setPdpType("subGroup3");
- pdpSubgroup3.setSupportedPolicyTypes(
- Arrays.asList(new ToscaConceptIdentifier("onap.policies.monitoring.tcagen2", "1.0.0"),
- new ToscaConceptIdentifier("onap.policies.controlloop.operational.common.Drools", "1.0.0")));
- pdpSubgroup3.setPolicies(Arrays.asList(new ToscaConceptIdentifier("org.onap.testos", "2.0.0"),
- new ToscaConceptIdentifier("OPERATIONAL_vLoadBalancerMS_v1_0_Drools_1_0_0_7xd", "1.0.0")));
-
- // Should match pdpSubgroup1
- PdpGroup pdpGroup1 = new PdpGroup();
- pdpGroup1.setName("pdpGroup1");
- pdpGroup1.setPdpGroupState(PdpState.ACTIVE);
- pdpGroup1.setPdpSubgroups(Arrays.asList(pdpSubgroup1));
-
- // Should match pdpSubgroup1, pdpSubgroup2, pdpSubgroup3
- // Should match also for the policy (pdpSubgroup2)
- PdpGroup pdpGroup2 = new PdpGroup();
- pdpGroup2.setName("pdpGroup2");
- pdpGroup2.setPdpGroupState(PdpState.ACTIVE);
- pdpGroup2.setPdpSubgroups(Arrays.asList(pdpSubgroup1, pdpSubgroup2, pdpSubgroup3));
-
- PdpGroups pdpGroups = new PdpGroups();
- pdpGroups.setGroups(Arrays.asList(pdpGroup1, pdpGroup2));
-
- pdpGroupsJson = JsonUtils.GSON.toJson(pdpGroups);
- }
-
- @Test
- public void testMergePoliciesAndPdpGroupStates() throws IOException {
- JSONAssert.assertEquals(ResourceFileUtils.getResourceAsString("example/policy/policy-merger.json"),
- PoliciesPdpMerger.mergePoliciesAndPdpGroupStates(
- ResourceFileUtils.getResourceAsString("http-cache/example/policy/api/v1/policies/.file"),
- pdpGroupsJson).toString(), true);
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/tosca/DictionaryServiceItCase.java b/src/test/java/org/onap/policy/clamp/tosca/DictionaryServiceItCase.java
deleted file mode 100644
index fdde53a21..000000000
--- a/src/test/java/org/onap/policy/clamp/tosca/DictionaryServiceItCase.java
+++ /dev/null
@@ -1,247 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.tosca;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-import java.util.List;
-import javax.persistence.EntityNotFoundException;
-import javax.transaction.Transactional;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.policy.clamp.clds.Application;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = Application.class)
-public class DictionaryServiceItCase {
-
- @Autowired
- private DictionaryService dictionaryService;
-
- @Autowired
- private DictionaryElementsRepository dictionaryElementsRepository;
-
- private DictionaryElement getDictionaryElement(String shortName, String name,
- String description, String type, String subDictionaryName) {
-
- return new DictionaryElement(name, shortName, description, type, subDictionaryName);
-
- }
-
- private Dictionary getSimpleDictionaryExample() {
-
- Dictionary dictionary = new Dictionary("Dictionary1", 0, null);
-
- dictionary.addDictionaryElements(getDictionaryElement("DE1", "DictionaryElement1",
- "DictionaryElement1", "string", null));
-
- dictionary.addDictionaryElements(getDictionaryElement("DE2", "DictionaryElement2",
- "DictionaryElement2", "number", null));
-
- return dictionary;
- }
-
- private Dictionary getSecondaryDictionaryExample() {
-
- Dictionary dictionary = new Dictionary("SecondaryDict", 1, "string");
-
- dictionary.addDictionaryElements(getDictionaryElement("SDE1", "SecondaryDictElement1",
- "SecondaryDictElement1", "string", null));
-
- dictionary.addDictionaryElements(getDictionaryElement("SDE2", "SecondaryDictElement2",
- "SecondaryDictElement2", "string", null));
-
- return dictionary;
- }
-
- /**
- * Test to validate that Dictionary is created.
- */
- @Test
- @Transactional
- public void shouldCreateDictionary() {
- Dictionary dictionary = getSimpleDictionaryExample();
- Dictionary actualDictionary = dictionaryService.saveOrUpdateDictionary(dictionary);
- assertNotNull(actualDictionary);
- assertThat(actualDictionary).isEqualTo(dictionary);
- assertThat(actualDictionary.getName()).isEqualTo(dictionary.getName());
-
- assertThat(actualDictionary.getDictionaryElements()).contains(
- dictionaryElementsRepository.findById("DE1").get(),
- dictionaryElementsRepository.findById("DE2").get());
- }
-
- /**
- * Test to validate a DictionaryElement is created for a Dictionary.
- */
- @Test
- @Transactional
- public void shouldCreateorUpdateDictionaryElement() {
- Dictionary dictionary = getSimpleDictionaryExample();
- Dictionary actualDictionary = dictionaryService.saveOrUpdateDictionary(dictionary);
- DictionaryElement dictionaryElement =
- getDictionaryElement("DictionaryElement3", "DE3", "DictionaryElement3", "date", null);
- actualDictionary.addDictionaryElements(dictionaryElement);
- Dictionary updatedDictionary = dictionaryService
- .saveOrUpdateDictionaryElement(actualDictionary.getName(), actualDictionary);
- assertNotNull(updatedDictionary);
- assertTrue(updatedDictionary.getDictionaryElements().contains(dictionaryElement));
- assertThat(updatedDictionary.getName()).isEqualTo(actualDictionary.getName());
- // update the dictionary element.
- dictionaryElement.setDescription("DictionaryElement3 New Description");
- Dictionary dictionary3 = new Dictionary("Dictionary1", 0, null);
- dictionary3.addDictionaryElements(dictionaryElement);
- Dictionary updatedDictionary2 =
- dictionaryService.saveOrUpdateDictionaryElement(dictionary3.getName(), dictionary3);
-
- assertNotNull(updatedDictionary2);
- assertTrue(updatedDictionary2.getDictionaryElements().contains(dictionaryElement));
- updatedDictionary2.getDictionaryElements().forEach(element -> {
- if (element.equals(dictionaryElement)) {
- assertTrue(element.getDescription().equals(dictionaryElement.getDescription()));
- }
- });
-
- }
-
- /**
- * Test to validate that All Dictionaries are retrieved.
- */
- @Test
- @Transactional
- public void shouldReturnAllDictionaries() {
- Dictionary dictionary = getSimpleDictionaryExample();
- Dictionary secondaryDictionary = getSecondaryDictionaryExample();
- dictionaryService.saveOrUpdateDictionary(dictionary);
- dictionaryService.saveOrUpdateDictionary(secondaryDictionary);
-
- List<Dictionary> list = dictionaryService.getAllDictionaries();
- assertNotNull(list);
- assertThat(list).contains(dictionary, secondaryDictionary);
- }
-
- /**
- * Test to validate one Dictionary is returned.
- */
- @Test
- @Transactional
- public void shouldReturnOneDictionary() {
- Dictionary dictionary = getSimpleDictionaryExample();
- dictionaryService.saveOrUpdateDictionary(dictionary);
-
- Dictionary returnedDictionary = dictionaryService.getDictionary("Dictionary1");
- assertNotNull(returnedDictionary);
- assertThat(returnedDictionary).isEqualTo(dictionary);
- assertThat(returnedDictionary.getDictionaryElements())
- .isEqualTo(dictionary.getDictionaryElements());
- }
-
- /**
- * Test to validate one Dictionary is returned.
- */
- @Test
- @Transactional
- public void shouldReturnEntityNotFoundException() {
- try {
- dictionaryService.getDictionary("Test");
- } catch (Exception e) {
- assertThat(e).isInstanceOf(EntityNotFoundException.class);
- assertTrue(e.getMessage().equals("Couldn't find Dictionary named: Test"));
- }
- }
-
- /**
- * Test to validate Dictionary is deleted.
- */
- @Test
- @Transactional
- public void shouldDeleteDictionaryByObject() {
- Dictionary dictionary = getSimpleDictionaryExample();
- Dictionary returnedDictionary = dictionaryService.saveOrUpdateDictionary(dictionary);
-
- dictionaryService.deleteDictionary(returnedDictionary);
- try {
- dictionaryService.getDictionary("Dictionary1");
- } catch (EntityNotFoundException e) {
- assertTrue(e.getMessage().equals("Couldn't find Dictionary named: Dictionary1"));
- }
- }
-
- /**
- * Test to validate Dictionary is deleted by Name.
- */
- @Test
- @Transactional
- public void shouldDeleteDictionaryByName() {
- Dictionary dictionary = getSimpleDictionaryExample();
- dictionaryService.saveOrUpdateDictionary(dictionary);
- dictionaryService.deleteDictionary(dictionary.getName());
- try {
- dictionaryService.getDictionary("Dictionary1");
- } catch (EntityNotFoundException e) {
- assertTrue(e.getMessage().equals("Couldn't find Dictionary named: Dictionary1"));
- }
- }
-
- /**
- * Test to validate DictionaryElements is deleted by Name.
- */
- @Test
- @Transactional
- public void shouldDeleteDictionaryElementsByName() {
- Dictionary dictionary = getSimpleDictionaryExample();
- dictionaryService.saveOrUpdateDictionary(dictionary);
- DictionaryElement dictionaryElement =
- dictionaryElementsRepository.findById("DE1").orElse(null);
- assertNotNull(dictionaryElement);
- dictionaryService.deleteDictionaryElement("Dictionary1", "DE1");
- dictionary = dictionaryService.getDictionary("Dictionary1");
- DictionaryElement deletedDictionaryElement =
- dictionaryElementsRepository.findById("DE1").orElse(null);
- assertThat(deletedDictionaryElement).isNotIn(dictionary.getDictionaryElements());
- }
-
- /**
- * Test to validate all secondary level dictionary names are returned.
- */
- @Test
- @Transactional
- public void shouldReturnAllSecondaryLevelDictionaryNames() {
- Dictionary dictionary = getSecondaryDictionaryExample();
- dictionaryService.saveOrUpdateDictionary(dictionary);
-
- Dictionary dictionary2 = new Dictionary("SecondaryDict2", 1, "string");
- dictionaryService.saveOrUpdateDictionary(dictionary2);
- List<String> secondaryDictionaryNames =
- dictionaryService.getAllSecondaryLevelDictionaryNames();
-
- assertNotNull(secondaryDictionaryNames);
- assertThat(secondaryDictionaryNames).contains(dictionary.getName(), dictionary2.getName());
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/util/PassDecoderTest.java b/src/test/java/org/onap/policy/clamp/util/PassDecoderTest.java
deleted file mode 100644
index 7fd0cb91d..000000000
--- a/src/test/java/org/onap/policy/clamp/util/PassDecoderTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP POLICY-CLAMP
- * ================================================================================
- * Copyright (C) 2019, 2021 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.util;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-
-import org.junit.Test;
-
-public class PassDecoderTest {
-
- private final String encrypted = "enc:WWCxchk4WGBNSvuzLq3MLjMs5ObRybJtts5AI0XD1Vc";
-
- @Test
- public final void testDecryptionNoKeyfile() throws Exception {
- String decodedPass = PassDecoder.decode(encrypted, null);
- assertEquals(decodedPass, encrypted);
- }
-
- @Test
- public final void testDecryptionNoPassword() throws Exception {
- String decodedPass = PassDecoder.decode(null, "classpath:clds/aaf/org.onap.clamp.keyfile");
- assertNull(decodedPass);
- }
-
- @Test
- public final void testDecryption() throws Exception {
- String decodedPass = PassDecoder.decode(encrypted, "classpath:clds/aaf/org.onap.clamp.keyfile");
- assertEquals(decodedPass, "China in the Spring");
- assertEquals("Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U", PassDecoder
- .decode("enc:JPV4p067JlSXt2Fet9bfuI8JpkS4ZGYVcgypcPs98gXjgjCjTze_d3JxqmlKaaakdiOjIcEC_MJh6-5pJTLgdc",
- "classpath:clds/aaf/org.onap.clamp.keyfile"));
- }
-}
diff --git a/src/test/java/org/onap/policy/clamp/util/SemanticVersioningTest.java b/src/test/java/org/onap/policy/clamp/util/SemanticVersioningTest.java
deleted file mode 100644
index 604ce55db..000000000
--- a/src/test/java/org/onap/policy/clamp/util/SemanticVersioningTest.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP CLAMP
- * ================================================================================
- * Copyright (C) 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.
- * ============LICENSE_END============================================
- * ===================================================================
- *
- */
-
-package org.onap.policy.clamp.util;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-import org.junit.Test;
-
-public class SemanticVersioningTest {
-
- /**
- * compare test.
- */
- @Test
- public void compareTest() {
- assertThat(SemanticVersioning.compare("1.0.0", "2.0.0")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("1.5.0", "2.0.0")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("1.5.0", "2.1.0")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("1.5.3", "2.0.0")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("2.5.3", "2.6.0")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("2.5", "2.5.1")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("2.5.0", "2.5.1")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("2.5.0.0", "2.5.1")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("2.5.1.0", "2.5.1")).isEqualTo(1);
-
- assertThat(SemanticVersioning.compare("2.0.0", "1.0.0")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("2.0.0", "1.5.0")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("2.1.0", "1.5.0")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("2.0.0", "1.5.3")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("2.6.0", "2.5.3")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("2.5.1", "2.5")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("2.5.1", "2.5.0")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("2.5.1", "2.5.0.0")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("1", "1.2.3.0")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("1.2", "1")).isEqualTo(1);
- }
-
- /**
- * Compare test.
- */
- @Test
- public void compareEqualsTest() {
- assertThat(SemanticVersioning.compare("1.0.0", "1.0.0")).isEqualTo(0);
- assertThat(SemanticVersioning.compare("1.0.0.0", "1.0.0")).isEqualTo(1);
- assertThat(SemanticVersioning.compare("1.2.3", "1.2.3")).isEqualTo(0);
- assertThat(SemanticVersioning.compare("1.2.3", "1.2.3.0")).isEqualTo(-1);
-
- }
-
- /**
- * Compare with null.
- */
- @Test
- public void compareNullTest() {
- assertThat(SemanticVersioning.compare(null, null)).isEqualTo(0);
- assertThat(SemanticVersioning.compare(null, "1.0")).isEqualTo(-1);
- assertThat(SemanticVersioning.compare("1.0", null)).isEqualTo(1);
- }
-
- /**
- * Increment major version test.
- */
- @Test
- public void incrementVersionTest() {
- assertThat(SemanticVersioning.incrementMajorVersion("1.0")).isEqualTo("2.0.0");
- assertThat(SemanticVersioning.incrementMajorVersion("1.0.0")).isEqualTo("2.0.0");
- assertThat(SemanticVersioning.incrementMajorVersion("1")).isEqualTo("2.0.0");
- assertThat(SemanticVersioning.incrementMajorVersion("1.2.3")).isEqualTo("2.0.0");
- }
-}