aboutsummaryrefslogtreecommitdiffstats
path: root/test/mocks/pnfsimulator/pnfsimulator/integration
diff options
context:
space:
mode:
Diffstat (limited to 'test/mocks/pnfsimulator/pnfsimulator/integration')
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/pom.xml130
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/Main.java35
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorController.java59
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorService.java36
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/application.properties1
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/keystorebin2196 -> 0 bytes
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/BasicAvailabilityTest.java235
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/OptionalTemplatesTest.java204
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/SearchInTemplatesTest.java269
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TemplatesManagementTest.java175
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TestConfiguration.java36
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/suites/DockerBasedTestsSuite.java46
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/application.properties6
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/notification.json45
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwrite_template.json6
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwritten_template.json6
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/registration.json36
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/complicated_template.json43
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/simple_template.json12
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_array.json23
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_booleans.json12
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_floats.json13
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_ints.json12
-rw-r--r--test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/upload_template.json6
24 files changed, 0 insertions, 1446 deletions
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/pom.xml b/test/mocks/pnfsimulator/pnfsimulator/integration/pom.xml
deleted file mode 100644
index 21c2f3c49..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/pom.xml
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- Simulator
- ================================================================================
- Copyright (C) 2019 Nokia. 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=========================================================
- -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.onap.simulator</groupId>
- <artifactId>simulator-parent</artifactId>
- <version>5.0.0-SNAPSHOT</version>
- </parent>
-
- <artifactId>pnf-simulator-integration</artifactId>
- <repositories>
- <repository>
- <id>dl.bintray.com</id>
- <url>https://dl.bintray.com/palantir/releases</url>
- </repository>
- </repositories>
-
- <properties>
- <maven.compiler.source>1.8</maven.compiler.source>
- <maven.compiler.target>1.8</maven.compiler.target>
- </properties>
-
- <dependencies>
-
- <dependency>
- <groupId>org.assertj</groupId>
- <artifactId>assertj-core</artifactId>
- <version>3.9.1</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter</artifactId>
- <version>2.0.2.RELEASE</version>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- <version>2.0.2.RELEASE</version>
- </dependency>
-
- <dependency>
- <groupId>io.rest-assured</groupId>
- <artifactId>rest-assured</artifactId>
- <version>3.2.0</version>
- </dependency>
- <dependency>
- <groupId>org.mongodb</groupId>
- <artifactId>mongo-java-driver</artifactId>
- <version>3.9.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-test</artifactId>
- <version>5.0.4.RELEASE</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-test</artifactId>
- <version>2.0.1.RELEASE</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.8.2</version>
- </dependency>
- <dependency>
- <groupId>com.palantir.docker.compose</groupId>
- <artifactId>docker-compose-rule-junit4</artifactId>
- <version>0.34.0</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <executions>
- <execution>
- <id>onap-license</id>
- <phase>none</phase>
- </execution>
- <execution>
- <id>onap-java-style</id>
- <phase>none</phase>
- </execution>
- </executions>
- <artifactId>maven-checkstyle-plugin</artifactId>
- <version>2.17</version>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.12.1</version>
- <configuration>
- <includes>
- <!--Execute only suites from the test folder-->
- <include>**/*Suite.java</include>
- </includes>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/Main.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/Main.java
deleted file mode 100644
index 7288c2a28..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/Main.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * PNF-REGISTRATION-HANDLER
- * ================================================================================
- * Copyright (C) 2018 Nokia. 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.pnfsimulator.integration;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.scheduling.annotation.EnableAsync;
-
-@SpringBootApplication
-@EnableAsync
-public class Main {
-
- public static void main(String[] args) {
- SpringApplication.run(Main.class, args);
- }
-}
-
-
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorController.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorController.java
deleted file mode 100644
index 70e0c609c..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorController.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration;
-
-import com.google.gson.Gson;
-import com.google.gson.JsonObject;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-@RequestMapping("ves-simulator")
-@RestController
-public class VesSimulatorController {
-
- private final VesSimulatorService vesSimulatorService;
- private final Gson gson;
-
- @Autowired
- public VesSimulatorController(VesSimulatorService vesSimulatorService, Gson gson) {
- this.vesSimulatorService = vesSimulatorService;
- this.gson = gson;
- }
-
- @PostMapping("eventListener/v5")
- String sendEventToDmaapV5(@RequestBody String body) {
- System.out.println("Received event" + body);
- JsonObject jsonObject = gson.fromJson(body, JsonObject.class);
- vesSimulatorService.sendEventToDmaapV5(jsonObject);
- return "MessageAccepted";
- }
-
- @PostMapping("eventListener/v7")
- String sendEventToDmaapV7(@RequestBody String body) {
- System.out.println("Received event" + body);
- JsonObject jsonObject = gson.fromJson(body, JsonObject.class);
- vesSimulatorService.sendEventToDmaapV7(jsonObject);
- return "MessageAccepted";
- }
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorService.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorService.java
deleted file mode 100644
index 65e5d3e13..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/java/org/onap/pnfsimulator/integration/VesSimulatorService.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration;
-
-import com.google.gson.JsonObject;
-import org.springframework.stereotype.Service;
-
-@Service
-public class VesSimulatorService {
-
- void sendEventToDmaapV5(JsonObject jsonObject) {
- //JUST FOR TESTING PURPOSE
- }
-
- void sendEventToDmaapV7(JsonObject jsonObject) {
- //JUST FOR TESTING PURPOSE
- }
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/application.properties b/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/application.properties
deleted file mode 100644
index 205ed95fb..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/application.properties
+++ /dev/null
@@ -1 +0,0 @@
-server.port=8000 \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/keystore b/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/keystore
deleted file mode 100644
index 26a16f756..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/main/resources/keystore
+++ /dev/null
Binary files differ
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/BasicAvailabilityTest.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/BasicAvailabilityTest.java
deleted file mode 100644
index 9f11a00a0..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/BasicAvailabilityTest.java
+++ /dev/null
@@ -1,235 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration;
-
-import static io.restassured.RestAssured.given;
-import static io.restassured.RestAssured.when;
-import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
-import static org.hamcrest.Matchers.equalTo;
-
-import com.google.gson.JsonObject;
-import java.io.IOException;
-import java.net.Inet4Address;
-import java.net.NetworkInterface;
-import java.net.SocketException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.Collections;
-import java.util.UUID;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Mockito;
-import org.mockito.internal.util.Timer;
-import org.mockito.internal.verification.VerificationOverTimeImpl;
-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.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = {Main.class, TestConfiguration.class}, webEnvironment = WebEnvironment.DEFINED_PORT)
-public class BasicAvailabilityTest {
-
- @Autowired
- VesSimulatorController vesSimulatorController;
-
- @Autowired
- VesSimulatorService vesSimulatorService;
-
- private final String ACTION_START = "start";
-
- private String currenVesSimulatorIp;
-
- @Before
- public void setUp() throws Exception {
- currenVesSimulatorIp = getCurrentIpAddress();
- }
-
- @After
- public void tearDown() {
- Mockito.reset(vesSimulatorService);
- }
-
- @Test
- public void simulatorShouldFailWhenTriggeredNonexistentTemplate(){
- //given
- String startUrl = prepareRequestUrl(ACTION_START);
- String body = "{\n"
- + "\"templateName\": \"any_nonexistent_template.json\",\n"
- + "\"patch\":{},\n"
- + "\"simulatorParams\": {\n"
- + "\"vesServerUrl\": \"https://" + currenVesSimulatorIp + ":9443/ves-simulator/eventListener/v5\",\n"
- + "\"repeatInterval\": 1,\n"
- + "\"repeatCount\": 1\n"
- + "}\n"
- + "}";
-
- //when
- given()
- .contentType("application/json")
- .body(body)
- .when()
- .post(startUrl)
- .then()
- .statusCode(400)
- .body("message", equalTo("Cannot start simulator - template any_nonexistent_template.json not found."));
- }
-
- @Test
- public void whenTriggeredSimulatorShouldSendSingleEventToVes() {
- //given
- String startUrl = prepareRequestUrl(ACTION_START);
- String body = "{\n"
- + "\"templateName\": \"notification.json\",\n"
- + "\"patch\":{},\n"
- + "\"simulatorParams\": {\n"
- + "\"vesServerUrl\": \"https://" + currenVesSimulatorIp + ":9443/ves-simulator/eventListener/v5\",\n"
- + "\"repeatInterval\": 1,\n"
- + "\"repeatCount\": 1\n"
- + "}\n"
- + "}";
- ArgumentCaptor<JsonObject> parameterCaptor = ArgumentCaptor.forClass(JsonObject.class);
-
- //when
- given()
- .contentType("application/json")
- .body(body)
- .when()
- .post(startUrl)
- .then()
- .statusCode(200)
- .body("message", equalTo("Request started"));
-
- Mockito.verify(vesSimulatorService,
- Mockito.timeout(3000))
- .sendEventToDmaapV5(parameterCaptor.capture());
-
- assertThat(parameterCaptor.getValue()
- .getAsJsonObject("event")
- .getAsJsonObject("commonEventHeader")
- .get("domain").getAsString()).isEqualTo("notification");
- }
-
- @Test
- public void simulatorShouldCorrectlyRespondOnCancellAllEvent() {
- //given
- String ACTION_CANCEL_ALL = "cancel";
- String cancelAllUrl = prepareRequestUrl(ACTION_CANCEL_ALL);
-
- //when
- when()
- .post(cancelAllUrl)
- .then()
- .statusCode(200)
- .body("message", equalTo("Event(s) was cancelled"));
-
- }
-
- @Test
- public void simulatorBeAbleToUseNewlyAddedTemplate() throws IOException {
- //given
- String templateBody = "{\"fake\":\"template\"}\n";
- String fileName = UUID.randomUUID() + ".json";
- String requestBody = "{\n"
- + "\"templateName\": \"" + fileName + "\",\n"
- + "\"patch\":{},\n"
- + "\"simulatorParams\": {\n"
- + "\"vesServerUrl\": \"https://" + currenVesSimulatorIp + ":9443/ves-simulator/eventListener/v5\",\n"
- + "\"repeatInterval\": 1,\n"
- + "\"repeatCount\": 1\n"
- + "}\n"
- + "}";
- ArgumentCaptor<JsonObject> parameterCaptor = ArgumentCaptor.forClass(JsonObject.class);
-
- //when
- Path newFile = Files.createFile(Paths.get("..", "templates", fileName));
- Files.write(newFile, templateBody.getBytes());
-
- given()
- .contentType("application/json")
- .body(requestBody)
- .when()
- .post(prepareRequestUrl(ACTION_START));
-
- Files.delete(newFile);
-
- //then
- Mockito.verify(vesSimulatorService, Mockito.timeout(3000))
- .sendEventToDmaapV5(parameterCaptor.capture());
- assertThat(parameterCaptor.getValue()
- .get("fake").getAsString()).isEqualTo("template");
-
- }
-
- @Test
- public void whenTriggeredSimulatorShouldSendGivenAmountOfEventsToVes() {
- //given
- String startUrl = prepareRequestUrl(ACTION_START);
- String body = "{\n"
- + "\"templateName\": \"notification.json\",\n"
- + "\"patch\":{},\n"
- + "\"simulatorParams\": {\n"
- + "\"vesServerUrl\": \"https://" + currenVesSimulatorIp + ":9443/ves-simulator/eventListener/v5\",\n"
- + "\"repeatInterval\": 1,\n"
- + "\"repeatCount\": 4\n"
- + "}\n"
- + "}";
- ArgumentCaptor<JsonObject> parameterCaptor = ArgumentCaptor.forClass(JsonObject.class);
-
- //when
- given()
- .contentType("application/json")
- .body(body)
- .when()
- .post(startUrl)
- .then()
- .statusCode(200)
- .body("message", equalTo("Request started"));
-
- VerificationOverTimeImpl verificator = new VerificationOverTimeImpl(100, Mockito.times(4), false, new Timer(6000));
- Mockito.verify(vesSimulatorService, verificator).sendEventToDmaapV5(parameterCaptor.capture());
-
- for (JsonObject value : parameterCaptor.getAllValues()) {
- assertThat(value
- .getAsJsonObject("event")
- .getAsJsonObject("commonEventHeader")
- .get("domain").getAsString()).isEqualTo("notification");
- }
- }
-
- private String prepareRequestUrl(String action) {
- return "http://0.0.0.0:5000/simulator/" + action;
- }
-
- private String getCurrentIpAddress() throws SocketException {
- return Collections.list(NetworkInterface.getNetworkInterfaces()).stream()
- .flatMap(i -> Collections.list(i.getInetAddresses()).stream())
- .filter(ip -> ip instanceof Inet4Address)
- .map(e -> (Inet4Address) e)
- .findFirst()
- .orElseThrow(RuntimeException::new)
- .getHostAddress();
- }
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/OptionalTemplatesTest.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/OptionalTemplatesTest.java
deleted file mode 100644
index a5ffe4d47..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/OptionalTemplatesTest.java
+++ /dev/null
@@ -1,204 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration;
-
-import static io.restassured.RestAssured.given;
-import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
-import static org.hamcrest.Matchers.equalTo;
-
-import com.google.gson.JsonObject;
-import com.mongodb.MongoClient;
-import com.mongodb.MongoClientOptions;
-import com.mongodb.MongoCredential;
-import com.mongodb.ServerAddress;
-import com.mongodb.client.FindIterable;
-import com.mongodb.client.MongoCollection;
-import com.mongodb.client.MongoCursor;
-import com.mongodb.client.MongoDatabase;
-import java.time.Instant;
-import java.net.Inet4Address;
-import java.net.NetworkInterface;
-import java.net.SocketException;
-import java.net.UnknownHostException;
-import java.util.Collections;
-import org.assertj.core.api.Assertions;
-import org.bson.Document;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.ArgumentCaptor;
-import org.mockito.Mockito;
-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.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = {Main.class, TestConfiguration.class}, webEnvironment = WebEnvironment.DEFINED_PORT)
-public class OptionalTemplatesTest {
-
- private static final String PNF_SIMULATOR_DB = "pnf_simulator";
- private static final String COMMON_EVENT_HEADER = "commonEventHeader";
- private static final String PNF_SIMULATOR_DB_PSWD = "zXcVbN123!";
- private static final String PNF_SIMULATOR_DB_USER = "pnf_simulator_user";
- private static final String PATCHED = "patched";
- private static final String SINGLE_EVENT_URL = "http://0.0.0.0:5000/simulator/event";
-
- @Autowired
- VesSimulatorController vesSimulatorController;
-
- @Autowired
- private VesSimulatorService vesSimulatorService;
-
- private String currentVesSimulatorIp;
-
- @Before
- public void setUp() throws Exception {
- currentVesSimulatorIp = getCurrentIpAddress();
- }
-
- @After
- public void tearDown() {
- Mockito.reset(vesSimulatorService);
- }
-
- @Test
- public void whenTriggeredSimulatorWithoutTemplateShouldSendSingleEventToVes() {
- //given
- long currentTimestamp = Instant.now().getEpochSecond();
-
- String body = "{\n"
- + "\"vesServerUrl\": \"https://" + currentVesSimulatorIp + ":9443/ves-simulator/eventListener/v5\",\n"
- + "\"event\": { \n"
- + "\"commonEventHeader\": {\n"
- + "\"eventId1\": \"#RandomString(20)\",\n"
- + "\"eventId2\": \"#RandomInteger(10,10)\",\n"
- + "\"eventId3\": \"#Increment\",\n"
- + "\"eventId4\": \"#RandomPrimitiveInteger(10,10)\",\n"
- + "\"eventId5\": \"#TimestampPrimitive\",\n"
- + "\"sourceName\": \"Single_sourceName\",\n"
- + "\"version\": 3"
- + "}\n"
- + "}\n"
- + "}";
- ArgumentCaptor<JsonObject> parameterCaptor = ArgumentCaptor.forClass(JsonObject.class);
-
- //when
- given()
- .contentType("application/json")
- .body(body)
- .when()
- .post(SINGLE_EVENT_URL)
- .then()
- .statusCode(202)
- .body("message", equalTo("One-time direct event sent successfully"));
-
- //then
- long afterExecution = Instant.now().getEpochSecond();
- Mockito.verify(vesSimulatorService,
- Mockito.timeout(3000))
- .sendEventToDmaapV5(parameterCaptor.capture());
-
- JsonObject value = parameterCaptor.getValue();
- assertThat(value
- .getAsJsonObject(COMMON_EVENT_HEADER)
- .get("sourceName").getAsString()).isEqualTo("Single_sourceName");
- assertThat(value
- .getAsJsonObject(COMMON_EVENT_HEADER)
- .get("eventId1").getAsString().length()).isEqualTo(20);
- assertThat(value
- .getAsJsonObject(COMMON_EVENT_HEADER)
- .get("eventId2").getAsString()).isEqualTo("10");
- assertThat(value
- .getAsJsonObject(COMMON_EVENT_HEADER)
- .get("eventId3").getAsString()).isEqualTo("1");
- assertThat(value
- .getAsJsonObject(COMMON_EVENT_HEADER)
- .get("eventId4").getAsInt()).isEqualTo(10);
- assertThat(value
- .getAsJsonObject(COMMON_EVENT_HEADER)
- .get("eventId5").getAsLong()).isBetween(currentTimestamp, afterExecution);
- }
-
- @Test
- public void whenTriggeredSimulatorWithoutTemplateEventShouldBeVisibleInDB() throws UnknownHostException {
- //given
- String body = "{\n"
- + "\"vesServerUrl\": \"https://" + currentVesSimulatorIp + ":9443/ves-simulator/eventListener/v5\",\n"
- + "\"event\": { \n"
- + "\"commonEventHeader\": {\n"
- + "\"sourceName\": \"HistoricalEvent\",\n"
- + "\"version\": 3"
- + "}\n"
- + "}\n"
- + "}";
- ArgumentCaptor<JsonObject> parameterCaptor = ArgumentCaptor.forClass(JsonObject.class);
-
- //when
- given()
- .contentType("application/json")
- .body(body)
- .when()
- .post(SINGLE_EVENT_URL)
- .then()
- .statusCode(202)
- .body("message", equalTo("One-time direct event sent successfully"));
-
- //then
- Mockito.verify(vesSimulatorService,
- Mockito.timeout(3000))
- .sendEventToDmaapV5(parameterCaptor.capture());
-
- Document sourceNameInMongoDB = findSourceNameInMongoDB();
- Assertions.assertThat(sourceNameInMongoDB.get(PATCHED))
- .isEqualTo("{\"commonEventHeader\":{\"sourceName\":\"HistoricalEvent\",\"version\":3}}");
- }
-
- private Document findSourceNameInMongoDB() throws UnknownHostException {
- MongoCredential credential = MongoCredential
- .createCredential(PNF_SIMULATOR_DB_USER, PNF_SIMULATOR_DB, PNF_SIMULATOR_DB_PSWD.toCharArray());
- MongoClient mongoClient = new MongoClient(new ServerAddress(Inet4Address.getLocalHost(), 27017),
- credential, MongoClientOptions.builder().build());
- MongoDatabase pnfSimulatorDb = mongoClient.getDatabase(PNF_SIMULATOR_DB);
- MongoCollection<Document> table = pnfSimulatorDb.getCollection("eventData");
- Document searchQuery = new Document();
- searchQuery.put(PATCHED, new Document("$regex", ".*" + "HistoricalEvent" + ".*"));
- FindIterable<Document> findOfPatched = table.find(searchQuery);
- Document dbObject = null;
- MongoCursor<Document> cursor = findOfPatched.iterator();
- if (cursor.hasNext()) {
- dbObject = cursor.next();
- }
- return dbObject;
- }
-
- private String getCurrentIpAddress() throws SocketException {
- return Collections.list(NetworkInterface.getNetworkInterfaces()).stream()
- .flatMap(i -> Collections.list(i.getInetAddresses()).stream())
- .filter(ip -> ip instanceof Inet4Address)
- .map(e -> (Inet4Address) e)
- .findFirst()
- .orElseThrow(RuntimeException::new)
- .getHostAddress();
- }
-
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/SearchInTemplatesTest.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/SearchInTemplatesTest.java
deleted file mode 100644
index 9d4ff3b8e..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/SearchInTemplatesTest.java
+++ /dev/null
@@ -1,269 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration;
-
-import static io.restassured.RestAssured.given;
-import static java.nio.file.Files.readAllBytes;
-
-import io.restassured.http.Header;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import org.hamcrest.Matchers;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.springframework.util.ResourceUtils;
-
-public class SearchInTemplatesTest {
-
- private static final String UPLOAD = "upload";
- private static final String SEARCH = "search";
- private static final String APPLICATION_JSON = "application/json";
- private static final String CONTENT_TYPE = "Content-Type";
-
- @BeforeClass
- public static void setUp() throws IOException {
- for (File file : readFileFromTemplatesFolder()) {
- byte[] body = readAllBytes(file.toPath());
-
- given()
- .body(body)
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(UPLOAD) + "?override=true")
- .then()
- .statusCode(201);
- }
- }
-
- @Test
- public void shouldFindNothingWhenNonexistentValueIsProvided(){
- given()
- .body("{\"searchExpr\": { \"child3\": \"nonexistentValue\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.empty());
- }
-
- @Test
- public void shouldFindNothingWhenNonexistentKeyIsProvided(){
- given()
- .body("{\"searchExpr\": { \"nonexistentKey\": \"Any value 1\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.empty());
- }
-
- @Test
- public void shouldFindNothingWhenPartOfKeyIsProvided(){
- given()
- .body("{\"searchExpr\": { \"child\": \"Any value 1\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.empty());
- }
-
- @Test
- public void shouldFindNothingWhenPartOfValueIsProvided(){
- given()
- .body("{\"searchExpr\": { \"child5\": \"Any\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.empty());
- }
-
- @Test
- public void shouldBeAbleToSearchForString(){
- given()
- .body("{\"searchExpr\": { \"child1\": \"Any value 1\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_array.json", "complicated_template.json", "simple_template.json"));
-
- given()
- .body("{\"searchExpr\": { \"child2\": \"any value 4\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_array.json"));
- }
-
- @Test
- public void shouldBeAbleToSearchForManyStrings(){
- given()
- .body("{\"searchExpr\": { \"child1\": \"Any value 1\", \"child2\": \"any value 2\"}}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("simple_template.json", "complicated_template.json"));
- }
-
- @Test
- public void shouldBeAbleToSearchForStarSign(){
- given()
- .body("{\"searchExpr\": { \"child2\": \"*\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("complicated_template.json"));
- }
-
- @Test
- public void shouldBeAbleToSearchForQuestionMark(){
- given()
- .body("{\"searchExpr\": { \"child1\": \"?\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("complicated_template.json"));
- }
-
- @Test
- public void shouldBeAbleToSearchForBrackets(){
- given()
- .body("{\"searchExpr\": { \"parent2\": \"[]\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_array.json"));
- }
-
- @Test
- public void shouldInformThatSearchForNullsIsProhibited(){
- given()
- .body("{\"searchExpr\": { \"child3\": null }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(400);
- }
-
- @Test
- public void shouldBeAbleToSearchForURI(){
- given()
- .body("{\"searchExpr\": { \"child3\": \"https://url.com?param1=test&param2=*\" }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("complicated_template.json"));
- }
-
- @Test
- public void shouldBeAbleToSearchForFloats(){
- given()
- .body("{\"searchExpr\": { \"child2\": 4.44 }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_array.json"));
-
- given()
- .body("{\"searchExpr\": { \"child5\": 4.4 }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("complicated_template.json", "template_with_floats.json"));
- }
-
- @Test
- public void shouldBeAbleToSearchForIntegers(){
- given()
- .body("{\"searchExpr\": { \"child2\": 1 }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_array.json", "template_with_ints.json"));
-
- given()
- .body("{\"searchExpr\": { \"child2\": 4 }}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_array.json"));
- }
-
- @Test
- public void shouldBeAbleToSearchForBooleans(){
- given()
- .body("{\"searchExpr\": { \"child4\": true}}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_booleans.json"));
-
- given()
- .body("{\"searchExpr\": { \"parent2\": false}}")
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(SEARCH))
- .then()
- .statusCode(200)
- .body("", Matchers.hasItems("template_with_booleans.json"));
- }
-
-
- private static String prepareRequestUrl(String action) {
- return "http://0.0.0.0:5000/template/" + action;
- }
-
- private static File[] readFileFromTemplatesFolder() throws FileNotFoundException {
- return ResourceUtils.getFile("classpath:templates/search").listFiles();
- }
-
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TemplatesManagementTest.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TemplatesManagementTest.java
deleted file mode 100644
index 7e74dd493..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TemplatesManagementTest.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration;
-
-import static io.restassured.RestAssured.given;
-
-import io.restassured.http.Header;
-import io.restassured.path.json.JsonPath;
-import io.restassured.path.json.config.JsonPathConfig;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.util.Map;
-import org.hamcrest.Matchers;
-import org.json.JSONException;
-import org.json.JSONObject;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
-import org.springframework.test.context.junit4.SpringRunner;
-import org.springframework.util.ResourceUtils;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = {Main.class, TestConfiguration.class}, webEnvironment = WebEnvironment.DEFINED_PORT)
-public class TemplatesManagementTest {
-
- private static final String LIST_URL = "list";
- private static final String GET_URL = "get/";
- private static final String UPLOAD = "upload";
- private static final String NOTIFICATION_JSON = "notification.json";
- private static final String REGISTRATION_JSON = "registration.json";
- private static final String UPLOAD_TEMPLATE_JSON = "upload_template.json";
- private static final String OVERWRITE_TEMPLATE_JSON = "overwrite_template.json";
- private static final String OVERWRITTEN_TEMPLATE_JSON = "overwritten_template.json";
- private static final String APPLICATION_JSON = "application/json";
- private static final String CONTENT_TYPE = "Content-Type";
- private static final String FORCE_FLAG = "?override=true";
- private static final String CONTENT = "content";
- private static final String TEMPLATE = "template";
- private static final String ID = "id";
-
- @Test
- public void whenCallingGetShouldReceiveNotificationTemplate() throws IOException {
- given()
- .when()
- .get(prepareRequestUrl(GET_URL) + NOTIFICATION_JSON)
- .then()
- .statusCode(200)
- .body(ID, Matchers.equalTo(NOTIFICATION_JSON))
- .body(CONTENT, Matchers.equalTo(readTemplateFromResources(NOTIFICATION_JSON).getMap(CONTENT)));
- }
-
- @Test
- public void whenCallingGetShouldReceiveRegistrationTemplate() throws IOException {
- given()
- .when()
- .get(prepareRequestUrl(GET_URL) + REGISTRATION_JSON)
- .then()
- .statusCode(200)
- .body(ID, Matchers.equalTo(REGISTRATION_JSON))
- .body(CONTENT, Matchers.equalTo(readTemplateFromResources(REGISTRATION_JSON).getMap(CONTENT)));
- }
-
- @Test
- public void whenCallingListShouldReceiveAllPredefinedTemplates() throws IOException {
- Map<Object, Object> registration = readTemplateFromResources(REGISTRATION_JSON).getMap(CONTENT);
- Map<Object, Object> notification = readTemplateFromResources(NOTIFICATION_JSON).getMap(CONTENT);
-
- given()
- .when()
- .get(prepareRequestUrl(LIST_URL))
- .then()
- .statusCode(200)
- .body(CONTENT, Matchers.<Map>hasItems(
- registration,
- notification
- ));
- }
-
- @Test
- public void whenCallingUploadAndGetShouldReceiveNewTemplate() throws IOException {
- byte[] body = Files.readAllBytes(readFileFromTemplatesFolder(UPLOAD_TEMPLATE_JSON));
-
- given()
- .body(body)
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(UPLOAD))
- .then()
- .statusCode(201);
-
- given()
- .when()
- .get(prepareRequestUrl(GET_URL) + UPLOAD_TEMPLATE_JSON)
- .then()
- .statusCode(200)
- .body(ID, Matchers.equalTo(UPLOAD_TEMPLATE_JSON))
- .body(CONTENT, Matchers.equalTo(readTemplateFromResources(UPLOAD_TEMPLATE_JSON).getMap(TEMPLATE)));
- }
-
- @Test
- public void whenCallingOverrideAndGetShouldReceiveNewTemplate() throws IOException, JSONException {
- byte[] body = Files.readAllBytes(readFileFromTemplatesFolder(OVERWRITE_TEMPLATE_JSON));
-
- given()
- .body(body)
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(UPLOAD))
- .then()
- .statusCode(201);
-
- JSONObject overwrittenBody = new JSONObject(new String(body));
- JSONObject overwrittenTemplate = new JSONObject("{\"field1\": \"overwritten_field1\"}");
- overwrittenBody.put(TEMPLATE, overwrittenTemplate);
-
- given()
- .body(overwrittenBody.toString().getBytes())
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(UPLOAD))
- .then()
- .statusCode(409);
-
- given()
- .body(overwrittenBody.toString().getBytes())
- .header(new Header(CONTENT_TYPE, APPLICATION_JSON))
- .when()
- .post(prepareRequestUrl(UPLOAD + FORCE_FLAG))
- .then()
- .statusCode(201);
-
- given()
- .when()
- .get(prepareRequestUrl(GET_URL) + OVERWRITE_TEMPLATE_JSON)
- .then()
- .statusCode(200)
- .body(ID, Matchers.equalTo(OVERWRITE_TEMPLATE_JSON))
- .body(CONTENT, Matchers.equalTo(readTemplateFromResources(OVERWRITTEN_TEMPLATE_JSON).getMap(CONTENT)));
- }
-
- private String prepareRequestUrl(String action) {
- return "http://0.0.0.0:5000/template/" + action;
- }
-
- private JsonPath readTemplateFromResources(String templateName) throws IOException {
- byte[] content = Files.readAllBytes(readFileFromTemplatesFolder(templateName));
- return new JsonPath(new String(content)).using(new JsonPathConfig("UTF-8"));
- }
-
- private Path readFileFromTemplatesFolder(String templateName) throws FileNotFoundException {
- return ResourceUtils.getFile("classpath:templates/"+templateName).toPath();
- }
-
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TestConfiguration.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TestConfiguration.java
deleted file mode 100644
index 19ae050c5..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/TestConfiguration.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration;
-
-import org.mockito.Mockito;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Primary;
-
-@Configuration
-public class TestConfiguration {
-
- @Bean
- @Primary
- VesSimulatorService provideVesSimulatorService() {
- return Mockito.mock(VesSimulatorService.class);
- }
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/suites/DockerBasedTestsSuite.java b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/suites/DockerBasedTestsSuite.java
deleted file mode 100644
index cc2ac588f..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/java/org/onap/pnfsimulator/integration/suites/DockerBasedTestsSuite.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * Simulator
- * ================================================================================
- * Copyright (C) 2019 Nokia. 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.pnfsimulator.integration.suites;
-
-import com.palantir.docker.compose.DockerComposeRule;
-import com.palantir.docker.compose.connection.waiting.HealthChecks;
-import org.junit.ClassRule;
-import org.junit.runner.RunWith;
-import org.junit.runners.Suite;
-import org.junit.runners.Suite.SuiteClasses;
-import org.onap.pnfsimulator.integration.BasicAvailabilityTest;
-import org.onap.pnfsimulator.integration.OptionalTemplatesTest;
-import org.onap.pnfsimulator.integration.SearchInTemplatesTest;
-import org.onap.pnfsimulator.integration.TemplatesManagementTest;
-
-@RunWith(Suite.class)
-@SuiteClasses({BasicAvailabilityTest.class, TemplatesManagementTest.class, OptionalTemplatesTest.class,
- SearchInTemplatesTest.class})
-public class DockerBasedTestsSuite {
-
- @ClassRule
- public static DockerComposeRule docker = DockerComposeRule.builder()
- .file("../docker-compose.yml")
- .waitingForService("pnf-simulator", HealthChecks.toHaveAllPortsOpen())
- .waitingForService("mongo", HealthChecks.toHaveAllPortsOpen())
- .build();
-
-}
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/application.properties b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/application.properties
deleted file mode 100644
index c3e147200..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/application.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-server.port=9443
-security.require-ssl=true
-server.ssl.key-store=src/main/resources/keystore
-server.ssl.key-store-password=collector
-server.ssl.keyStoreType=JKS
-server.ssl.keyAlias=tomcat \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/notification.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/notification.json
deleted file mode 100644
index 7b3e668aa..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/notification.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "id": "notification.json",
- "content": {
- "event": {
- "commonEventHeader": {
- "domain": "notification",
- "eventName": "vFirewallBroadcastPackets",
- "eventId": "4cfc-91cf-31a46",
- "priority": "Normal",
- "reportingEntityName": "myVNF",
- "sequence": 1,
- "sourceName": "ClosedLoopVNF",
- "startEpochMicrosec": 1531616794,
- "lastEpochMicrosec": 1531719042,
- "vesEventListenerVersion": "7.0.1",
- "version": "4.0.1"
- },
- "notificationFields": {
- "changeIdentifier": "PM_MEAS_FILES",
- "changeType": "FileReady",
- "arrayOfNamedHashMap": [
- {
- "name": "A20161221.1031-1041.bin.gz",
- "hashMap": {
- "fileformatType": "org.3GPP.32.435#measCollec",
- "fileFormatVersion": "V10",
- "location": "ftpes://192.169.0.1:22/ftp/rop/A20161224.1030-1045.bin.gz",
- "compression": "gzip"
- }
- },
- {
- "name": "A20161222.1042-1102.bin.gz",
- "hashMap": {
- "fileFormatType": "org.3GPP.32.435#measCollec",
- "fileFormatVersion": "V10",
- "location": "ftpes://192.168.0.102:22/ftp/rop/A20161224.1045-1100.bin.gz",
- "compression": "gzip"
- }
- }
- ],
- "notificationFieldsVersion": "2.0"
- }
- }
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwrite_template.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwrite_template.json
deleted file mode 100644
index d6d94f7a7..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwrite_template.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "name": "overwrite_template.json",
- "template": {
- "field1": "field1"
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwritten_template.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwritten_template.json
deleted file mode 100644
index f7848d415..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/overwritten_template.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "id": "overwrite_template.json",
- "content": {
- "field1": "overwritten_field1"
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/registration.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/registration.json
deleted file mode 100644
index bf0ac717c..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/registration.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "id": "registration.json",
- "content": {
- "event": {
- "commonEventHeader": {
- "eventId": "registration_39239592",
- "eventType": "pnfRegistration",
- "reportingEntityName": "NOK6061ZW3",
- "domain": "pnfRegistration",
- "nfcNamingCode": "oam",
- "sequence": 0,
- "sourceId": "val13",
- "internalHeaderFields": {},
- "priority": "Normal",
- "sourceName": "NOK6061ZW3",
- "eventName": "pnfRegistration_Nokia_5gDu",
- "version": "4.0.1",
- "nfNamingCode": "gNB",
- "startEpochMicrosec": 1539239592379,
- "vesEventListenerVersion": "7.0.1",
- "lastEpochMicrosec": 1539239592379
- },
- "pnfRegistrationFields": {
- "pnfRegistrationFieldsVersion": "2.0",
- "serialNumber": "6061ZW3",
- "vendorName": "Nokia",
- "oamV4IpAddress": "val3",
- "oamV6IpAddress": "val4",
- "unitFamily": "BBU",
- "modelNumber": "val6",
- "softwareVersion": "val7",
- "unitType": "val8"
- }
- }
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/complicated_template.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/complicated_template.json
deleted file mode 100644
index 0edbb62dc..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/complicated_template.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
- "name": "complicated_template.json",
- "template": {
- "parent": {
- "child1": "Any value 1",
- "child2": {
- "parent": {
- "child1": "Any value 1",
- "child2": "Any value 2",
- "child3": {
- "child4": "Any value 4"
- },
- "child4": [
- "Any value 1",
- "Any value 2, Any value 3"
- ],
- "child5": [
- "Any value 4",
- 1,
- 2,
- 4.4,
- {
- "child6": [
- 1,
- 2,
- 4.4
- ]
- }
- ]
- }
- },
- "child3": {
- "child4": "Any value 4"
- }
- },
- "parent2": "Any value 2",
- "parent3": {
- "child1": "?",
- "child2": "*",
- "child3": "https://url.com?param1=test&param2=*"
- }
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/simple_template.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/simple_template.json
deleted file mode 100644
index ad2a64aff..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/simple_template.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "simple_template.json",
- "template": {
- "parent": {
- "child1": "Any value 1",
- "child2": "Any value 2",
- "child3": {
- "child4": "Any value 4"
- }
- }
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_array.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_array.json
deleted file mode 100644
index bb3235e2c..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_array.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "name": "template_with_array.json",
- "template": {
- "parent": {
- "child1": [
- {
- "child1": "Any value 1",
- "child2": [
- 4,
- 4.44
- ]
- }
- ],
- "child2": [
- 1,
- "Any value 4",
- 3.3,
- 5
- ]
- },
- "parent2": "[]"
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_booleans.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_booleans.json
deleted file mode 100644
index 8bf54080c..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_booleans.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "template_with_booleans.json",
- "template": {
- "parent": {
- "child1": true,
- "child3": {
- "child4": true
- }
- },
- "parent2": false
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_floats.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_floats.json
deleted file mode 100644
index aab3243e1..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_floats.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "name": "template_with_floats.json",
- "template": {
- "parent": {
- "child1": 6.4,
- "child2": 1.2,
- "child3": {
- "child5": 4.4,
- "child2": "1"
- }
- }
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_ints.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_ints.json
deleted file mode 100644
index 015cc46f3..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/search/template_with_ints.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "name": "template_with_ints.json",
- "template": {
- "parent": {
- "child1": 6,
- "child2": 1,
- "child3": {
- "child4": 4
- }
- }
- }
-} \ No newline at end of file
diff --git a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/upload_template.json b/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/upload_template.json
deleted file mode 100644
index 4c49f0e17..000000000
--- a/test/mocks/pnfsimulator/pnfsimulator/integration/src/test/resources/templates/upload_template.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "name": "upload_template.json",
- "template": {
- "field1": "field1"
- }
-} \ No newline at end of file