diff options
Diffstat (limited to 'test/mocks')
16 files changed, 210 insertions, 338 deletions
diff --git a/test/mocks/pnfsimulator/LICENSE.txt b/test/mocks/pnfsimulator/LICENSE.txt deleted file mode 100644 index 22e7ef85c..000000000 --- a/test/mocks/pnfsimulator/LICENSE.txt +++ /dev/null @@ -1,36 +0,0 @@ -/* -* ============LICENSE_START========================================== -* =================================================================== -* Copyright (c) 2018 NOKIA Intellectual Property. All rights reserved. -* =================================================================== -* -* Unless otherwise specified, all software contained herein is licensed -* under the Apache License, Version 2.0 (the "License"); -* you may not use this software 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. -* -* -* -* Unless otherwise specified, all documentation contained herein is licensed -* under the Creative Commons License, Attribution 4.0 Intl. (the "License"); -* you may not use this documentation except in compliance with the License. -* You may obtain a copy of the License at -* -* https://creativecommons.org/licenses/by/4.0/ -* -* Unless required by applicable law or agreed to in writing, documentation -* 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============================================ -*/
\ No newline at end of file diff --git a/test/mocks/pnfsimulator/pom.xml b/test/mocks/pnfsimulator/pom.xml index 1f1f46a04..2fee83622 100644 --- a/test/mocks/pnfsimulator/pom.xml +++ b/test/mocks/pnfsimulator/pom.xml @@ -1,155 +1,153 @@ <?xml version="1.0" encoding="UTF-8"?> <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> + 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.oparent</groupId> - <artifactId>oparent</artifactId> - <version>0.1.1</version> - </parent> + <groupId>org.onap.pnfsimulator</groupId> + <artifactId>pnf-simulator</artifactId> + <version>1.0.0-SNAPSHOT</version> - <groupId>org.onap.pnfsimulator</groupId> - <artifactId>pnf-simulator</artifactId> - <version>1.0</version> - - <name>pnf-simulator</name> + <name>pnf-simulator</name> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <simulator.main.class>org.onap.pnfsimulator.Main</simulator.main.class> + <docker.image.tag>${project.version}-latest</docker.image.tag> <dependency.directory.name>libs</dependency.directory.name> - <dependency.directory.location>${project.build.directory}/${dependency.directory.name} - </dependency.directory.location> - </properties> + <dependency.directory.location>${project.build.directory}/${dependency.directory.name}</dependency.directory.location> + <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily> + </properties> - <dependencies> - <dependency> - <groupId>org.apache.logging.log4j</groupId> - <artifactId>log4j-core</artifactId> - <version>2.11.0</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>2.6</version> - </dependency> - <dependency> - <groupId>org.json</groupId> - <artifactId>json</artifactId> - <version>20180130</version> - </dependency> - <dependency> - <groupId>org.apache.httpcomponents</groupId> - <artifactId>httpclient</artifactId> - <version>4.5.5</version> - </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>21.0</version> - </dependency> - <dependency> - <groupId>commons-cli</groupId> - <artifactId>commons-cli</artifactId> - <version>1.4</version> - </dependency> - <dependency> - <groupId>org.junit.jupiter</groupId> - <artifactId>junit-jupiter-engine</artifactId> - <version>5.1.1</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.assertj</groupId> - <artifactId>assertj-core</artifactId> - <version>3.9.1</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-lang3</artifactId> - <version>3.7</version> - </dependency> - </dependencies> + <dependencies> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-core</artifactId> + <version>2.11.0</version> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + <version>2.6</version> + </dependency> + <dependency> + <groupId>org.json</groupId> + <artifactId>json</artifactId> + <version>20180130</version> + </dependency> + <dependency> + <groupId>org.apache.httpcomponents</groupId> + <artifactId>httpclient</artifactId> + <version>4.5.5</version> + </dependency> + <dependency> + <groupId>com.google.guava</groupId> + <artifactId>guava</artifactId> + <version>21.0</version> + </dependency> + <dependency> + <groupId>commons-cli</groupId> + <artifactId>commons-cli</artifactId> + <version>1.4</version> + </dependency> + <dependency> + <groupId>org.junit.jupiter</groupId> + <artifactId>junit-jupiter-engine</artifactId> + <version>5.1.1</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.assertj</groupId> + <artifactId>assertj-core</artifactId> + <version>3.9.1</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-lang3</artifactId> + <version>3.7</version> + </dependency> + </dependencies> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <configuration> - <source>${maven.compiler.source}</source> - <target>${maven.compiler.target}</target> - <showWarnings>true</showWarnings> - <showDeprecation>true</showDeprecation> - </configuration> - </plugin> - <plugin> - <artifactId>maven-surefire-plugin</artifactId> - <version>2.19</version> - <dependencies> - <dependency> - <groupId>org.junit.platform</groupId> - <artifactId>junit-platform-surefire-provider</artifactId> - <version>1.1.1</version> - </dependency> - </dependencies> - <configuration> - <detail>true</detail> - <printSummary>true</printSummary> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-dependency-plugin</artifactId> - <configuration> - <outputDirectory>${dependency.directory.location}</outputDirectory> - <includeScope>runtime</includeScope> - <silent>true</silent> - </configuration> - <executions> - <execution> - <id>copy-external-dependencies</id> - <phase>package</phase> - <goals> - <goal>copy-dependencies</goal> - </goals> - </execution> - </executions> - </plugin> - <plugin> - <groupId>com.spotify</groupId> - <artifactId>docker-maven-plugin</artifactId> - <configuration> - <skipDockerBuild>false</skipDockerBuild> - <imageName> - ${onap.nexus.dockerregistry.daily}/onap/${project.artifactId} - </imageName> - <baseImage>openjdk:8-jdk-alpine</baseImage> - <cmd>java -cp ${dependency.directory.name}/*:${project.build.finalName}.jar ${simulator.main.class} - </cmd> - <resources> - <resource> - <targetPath>${dependency.directory.name}</targetPath> - <directory>${dependency.directory.location}</directory> - </resource> - <resource> - <targetPath>/</targetPath> - <directory>${project.build.directory}</directory> - <include>${project.build.finalName}.jar</include> - </resource> - </resources> - <imageTags> - <imageTag>${project.version}</imageTag> - <imageTag>latest</imageTag> - </imageTags> - <serverId>${onap.nexus.dockerregistry.daily}</serverId> - </configuration> - </plugin> - </plugins> - </build> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>${maven.compiler.source}</source> + <target>${maven.compiler.target}</target> + <showWarnings>true</showWarnings> + <showDeprecation>true</showDeprecation> + </configuration> + </plugin> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.19</version> + <dependencies> + <dependency> + <groupId>org.junit.platform</groupId> + <artifactId>junit-platform-surefire-provider</artifactId> + <version>1.1.1</version> + </dependency> + </dependencies> + <configuration> + <detail>true</detail> + <printSummary>true</printSummary> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <configuration> + <outputDirectory>${dependency.directory.location}</outputDirectory> + <includeScope>runtime</includeScope> + <silent>true</silent> + </configuration> + <executions> + <execution> + <id>copy-external-dependencies</id> + <phase>package</phase> + <goals> + <goal>copy-dependencies</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>com.spotify</groupId> + <artifactId>docker-maven-plugin</artifactId> + <version>1.0.0</version> + <configuration> + <imageName>${onap.nexus.dockerregistry.daily}/onap/${project.artifactId}</imageName> + <imageTags>${docker.image.tag}</imageTags> + <serverId>${onap.nexus.dockerregistry.daily}</serverId> + <baseImage>openjdk:8-jdk-alpine</baseImage> + <cmd>java -cp ${dependency.directory.name}/*:${project.build.finalName}.jar ${simulator.main.class}</cmd> + <resources> + <resource> + <targetPath>${dependency.directory.name}</targetPath> + <directory>${dependency.directory.location}</directory> + </resource> + <resource> + <targetPath>/</targetPath> + <directory>${project.build.directory}</directory> + <include>${project.build.finalName}.jar</include> + </resource> + </resources> + </configuration> + <executions> + <execution> + <id>build-image</id> + <phase>package</phase> + <goals> + <goal>build</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> </project> diff --git a/test/mocks/pnfsimulator/simulator.sh b/test/mocks/pnfsimulator/simulator.sh index 27384dd04..d1185565f 100755 --- a/test/mocks/pnfsimulator/simulator.sh +++ b/test/mocks/pnfsimulator/simulator.sh @@ -4,8 +4,8 @@ set -euo pipefail CONTAINER_NAME=pnf-simulator CONFIG_FILE_PATH=/config/body.json -SIMULATOR_DOCKER_HUB=hub-name -SIMULATOR_TAG=latest +SIMULATOR_DOCKER_HUB=nexus3.onap.org:10003/onap +SIMULATOR_TAG=1.0.0-SNAPSHOT-latest function main(){ diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/Main.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/Main.java index 8efdfe08d..37f1b21c9 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/Main.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/Main.java @@ -35,7 +35,7 @@ public class Main { private static Logger logger = LogManager.getLogger(Main.class); private static SimulatorFactory simulatorFactory = - new SimulatorFactory(MessageProvider.getInstance(), ParamsValidator.getInstance()); + new SimulatorFactory(MessageProvider.getInstance()); public static void main(String[] args) { @@ -51,7 +51,7 @@ public class Main { } catch (ParseException e) { logger.error("Invalid cli params", e); } catch (ValidationException e){ - logger.error("Missing some mandatory params:", e); + logger.error(e); } } } diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParams.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParams.java index 4c662ab5f..2ca0b5e7b 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParams.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParams.java @@ -1,4 +1,4 @@ -/* +/*- * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParamsProvider.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParamsProvider.java index 5c4d219a0..ab705e907 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParamsProvider.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/cli/SimulatorParamsProvider.java @@ -1,4 +1,4 @@ -/* +/*- * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageConstants.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageConstants.java index 194e8960a..5805a88c7 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageConstants.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageConstants.java @@ -1,4 +1,4 @@ -/* +/*- * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ @@ -17,11 +17,12 @@ * limitations under the License. * ============LICENSE_END========================================================= */ - + package org.onap.pnfsimulator.message; public final class MessageConstants { + public static final String EVENT = "event"; public static final String DOMAIN = "domain"; public static final String EVENT_ID = "eventId"; public static final String EVENT_TYPE = "eventType"; diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageProvider.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageProvider.java index 95f9dfc55..94f5fc167 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageProvider.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/message/MessageProvider.java @@ -1,4 +1,4 @@ -/* +/*- * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ @@ -35,13 +35,12 @@ import static org.onap.pnfsimulator.message.MessageConstants.PRIORITY; import static org.onap.pnfsimulator.message.MessageConstants.SEQUENCE; import static org.onap.pnfsimulator.message.MessageConstants.START_EPOCH_MICROSEC; import static org.onap.pnfsimulator.message.MessageConstants.VERSION; +import static org.onap.pnfsimulator.message.MessageConstants.EVENT; import java.util.Map; import java.util.UUID; import com.google.common.base.Preconditions; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; import org.json.JSONObject; public class MessageProvider { @@ -72,8 +71,11 @@ public class MessageProvider { } }); - root.put(COMMON_EVENT_HEADER, commonEventHeader); - root.put(OTHER_FIELDS, otherFields); + JSONObject event = new JSONObject(); + event.put(COMMON_EVENT_HEADER, commonEventHeader); + event.put(OTHER_FIELDS, otherFields); + + root.put(EVENT, event); return root; } @@ -91,6 +93,7 @@ public class MessageProvider { commonEventHeader.put(START_EPOCH_MICROSEC, timestamp); commonEventHeader.put(INTERNAL_HEADER_FIELDS, new JSONObject()); commonEventHeader.put(VERSION, 3); + commonEventHeader.put("functionalRole", "test_rola"); return commonEventHeader; } diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/Simulator.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/Simulator.java index d9559ecb2..ff2ca862a 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/Simulator.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/Simulator.java @@ -1,4 +1,4 @@ -/* +/*- * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ @@ -48,7 +48,7 @@ public class Simulator { Instant endTime = Instant.now().plus(duration); while (runningTimeNotExceeded(endTime)) { try { - logger.info("MESSAGE TO BE SENT:\n{}", messageBody.toString(4)); + logger.info(()-> "MESSAGE TO BE SENT:\n" + messageBody.toString(4)); clientProvider.sendMsg(messageBody.toString()); Thread.sleep(interval.toMillis()); } catch (InterruptedException e) { diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/SimulatorFactory.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/SimulatorFactory.java index 9f3d48ab3..e3a003831 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/SimulatorFactory.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/SimulatorFactory.java @@ -1,4 +1,4 @@ -/* +/*- * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ @@ -37,19 +37,17 @@ import org.onap.pnfsimulator.simulator.validation.ValidationException; public class SimulatorFactory { private MessageProvider messageProvider; - private ParamsValidator paramsValidator; - public SimulatorFactory(MessageProvider messageProvider, ParamsValidator paramsValidator) { + public SimulatorFactory(MessageProvider messageProvider) { this.messageProvider = messageProvider; - this.paramsValidator = paramsValidator; } public Simulator create(String vesServerUrl, String configFilePath) throws IOException, ValidationException { String configJson = FileUtils.readFileToString(new File(configFilePath), StandardCharsets.UTF_8); JSONObject configObject = new JSONObject(configJson); + ParamsValidator.forObject(configObject).validate(); - paramsValidator.validate(configObject); Duration duration = Duration.ofSeconds(parseJsonField(configObject, TEST_DURATION)); Duration interval = Duration.ofSeconds(parseJsonField(configObject, MESSAGE_INTERVAL)); JSONObject messageBody = messageProvider.createMessage(configObject); diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/client/HttpClientProvider.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/client/HttpClientProvider.java index 7ff506923..54d2c9fbb 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/client/HttpClientProvider.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/client/HttpClientProvider.java @@ -1,4 +1,4 @@ -/* +/*- * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ParamsValidator.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ParamsValidator.java index 57408660a..6cdb781f1 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ParamsValidator.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ParamsValidator.java @@ -1,23 +1,3 @@ -/*- - * ============LICENSE_START======================================================= - * org.onap.integration - * ================================================================================ - * Copyright (C) 2018 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.pnfsimulator.simulator.validation; import static org.onap.pnfsimulator.message.MessageConstants.MESSAGE_INTERVAL; @@ -28,71 +8,70 @@ import static org.onap.pnfsimulator.message.MessageConstants.PNF_VENDOR_NAME; import static org.onap.pnfsimulator.message.MessageConstants.TEST_DURATION; import com.google.common.collect.ImmutableMap; -import java.util.ArrayList; import java.util.List; -import java.util.function.BiPredicate; +import java.util.Map; +import java.util.Map.Entry; +import java.util.function.Predicate; +import java.util.stream.Collectors; import org.apache.commons.lang3.StringUtils; import org.json.JSONObject; public class ParamsValidator { - private final static String MISSING_PARAMS_ERROR = "Some mandatory params are missing"; - private static ParamsValidator instance; - + private final static String MISSING_PARAMS_MESSAGE = "Following mandatory params are missing:\n"; + private final Map<String, Predicate<String>> validators = ImmutableMap + .<String, Predicate<String>>builder() + .put(TEST_DURATION, this::isNumeric) + .put(MESSAGE_INTERVAL, this::isNumeric) + .put(PNF_SERIAL_NUMBER, this::isDefined) + .put(PNF_VENDOR_NAME, this::isDefined) + .put(PNF_OAM_IPV4_ADDRESS, this::isDefined) + .put(PNF_OAM_IPV6_ADDRESS, this::isDefined) + .build(); + + private JSONObject subject; + + private ParamsValidator(JSONObject paramsObject) { + subject = paramsObject; + } - public static ParamsValidator getInstance() { - if (instance == null) { - instance = new ParamsValidator(); - } - return instance; + public static ParamsValidator forObject(JSONObject configObject) { + return new ParamsValidator(configObject); } - public void validate(JSONObject params) throws ValidationException { - ImmutableMap<String, BiPredicate<JSONObject, String>> paramValidators = ImmutableMap - .<String, BiPredicate<JSONObject, String>>builder() - .put(TEST_DURATION, this::isNotNumeric) - .put(MESSAGE_INTERVAL, this::isNotNumeric) - .put(PNF_SERIAL_NUMBER, this::nullOrEmpty) - .put(PNF_VENDOR_NAME, this::nullOrEmpty) - .put(PNF_OAM_IPV4_ADDRESS, this::nullOrEmpty) - .put(PNF_OAM_IPV6_ADDRESS, this::nullOrEmpty) - .build(); - - List<String> missingParams = new ArrayList<>(); - - paramValidators.forEach((param, validator) -> { - if (validator.test(params, param)) { - missingParams.add(param); - } - }); - - clearIPError(missingParams); + public void validate() throws ValidationException { + + List<String> missingParams = validators + .entrySet() + .stream() + .filter(entry -> !entry.getValue().test(entry.getKey())) + .map(Entry::getKey) + .collect(Collectors.toList()); + + resolveMissingIP(missingParams); + if (!missingParams.isEmpty()) { throw new ValidationException(constructMessage(missingParams)); } } private String constructMessage(List<String> missingParams) { - StringBuilder msg = new StringBuilder(MISSING_PARAMS_ERROR); - - missingParams.forEach(param -> { - msg.append('\n'); - msg.append(param); - }); - return msg.toString(); + return MISSING_PARAMS_MESSAGE + missingParams + .stream() + .collect(Collectors.joining("\n")); } - private boolean isNotNumeric(JSONObject params, String param) { - return nullOrEmpty(params, param) || !StringUtils.isNumeric(params.getString(param)); + private boolean isNumeric(String param) { + return isDefined(param) && StringUtils.isNumeric(subject.getString(param)); } - private boolean nullOrEmpty(JSONObject params, String param) { - return !params.has(param) || params.getString(param).isEmpty(); + private boolean isDefined(String param) { + return subject.has(param) && !subject.getString(param).isEmpty(); } - private void clearIPError(List<String> missingParams) { + private void resolveMissingIP(List<String> missingParams) { // if only one IP is missing clear the error if (!(missingParams.contains(PNF_OAM_IPV4_ADDRESS) && missingParams.contains(PNF_OAM_IPV6_ADDRESS))) { missingParams.remove(PNF_OAM_IPV4_ADDRESS); diff --git a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ValidationException.java b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ValidationException.java index 086997f85..9855a784e 100644 --- a/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ValidationException.java +++ b/test/mocks/pnfsimulator/src/main/java/org/onap/pnfsimulator/simulator/validation/ValidationException.java @@ -1,23 +1,3 @@ -/*- - * ============LICENSE_START======================================================= - * org.onap.integration - * ================================================================================ - * Copyright (C) 2018 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.pnfsimulator.simulator.validation; public class ValidationException extends Exception { diff --git a/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorParamsProviderTest.java b/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorParamsProviderTest.java index bd6584233..96397eae1 100644 --- a/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorParamsProviderTest.java +++ b/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorParamsProviderTest.java @@ -1,23 +1,3 @@ -/*- - * ============LICENSE_START======================================================= - * org.onap.integration - * ================================================================================ - * Copyright (C) 2017 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.pnfsimulator; import org.apache.commons.cli.ParseException; diff --git a/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorTest.java b/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorTest.java index e3db4c837..ccbb72846 100644 --- a/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorTest.java +++ b/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/SimulatorTest.java @@ -1,23 +1,3 @@ -/*- - * ============LICENSE_START======================================================= - * org.onap.integration - * ================================================================================ - * Copyright (C) 2017 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.pnfsimulator; import org.assertj.core.api.Assertions; diff --git a/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/message/MessageProviderTest.java b/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/message/MessageProviderTest.java index d462d2592..bfd222dc2 100644 --- a/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/message/MessageProviderTest.java +++ b/test/mocks/pnfsimulator/src/test/java/org/onap/pnfsimulator/message/MessageProviderTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * org.onap.integration * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2018 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. @@ -23,20 +23,7 @@ package org.onap.pnfsimulator.message; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; -import static org.onap.pnfsimulator.message.MessageConstants.COMMON_EVENT_HEADER; -import static org.onap.pnfsimulator.message.MessageConstants.DOMAIN; -import static org.onap.pnfsimulator.message.MessageConstants.EVENT_ID; -import static org.onap.pnfsimulator.message.MessageConstants.EVENT_TYPE; -import static org.onap.pnfsimulator.message.MessageConstants.INTERNAL_HEADER_FIELDS; -import static org.onap.pnfsimulator.message.MessageConstants.LAST_EPOCH_MICROSEC; -import static org.onap.pnfsimulator.message.MessageConstants.OTHER_FIELDS; -import static org.onap.pnfsimulator.message.MessageConstants.OTHER_FIELDS_VERSION; -import static org.onap.pnfsimulator.message.MessageConstants.PNF_LAST_SERVICE_DATE; -import static org.onap.pnfsimulator.message.MessageConstants.PNF_MANUFACTURE_DATE; -import static org.onap.pnfsimulator.message.MessageConstants.PRIORITY; -import static org.onap.pnfsimulator.message.MessageConstants.SEQUENCE; -import static org.onap.pnfsimulator.message.MessageConstants.START_EPOCH_MICROSEC; -import static org.onap.pnfsimulator.message.MessageConstants.VERSION; +import static org.onap.pnfsimulator.message.MessageConstants.*; import java.util.UUID; import org.json.JSONObject; @@ -65,9 +52,10 @@ public class MessageProviderTest { @Test public void createMessage_should_create_constant_message_when_no_params_specified() { JSONObject message = messageProvider.createMessage(new JSONObject()); + JSONObject event = message.getJSONObject(EVENT); - JSONObject commonEventHeader = message.getJSONObject(COMMON_EVENT_HEADER); - JSONObject otherFields = message.getJSONObject(OTHER_FIELDS); + JSONObject commonEventHeader = event.getJSONObject(COMMON_EVENT_HEADER); + JSONObject otherFields = event.getJSONObject(OTHER_FIELDS); JSONObject expectedCommonEventHeader = generateConstantCommonEventHeader(); JSONObject expectedOtherFields = generateConstantOtherFields(); @@ -89,8 +77,9 @@ public class MessageProviderTest { JSONObject params = new JSONObject(testParamsJson); JSONObject message = messageProvider.createMessage(params); - JSONObject commonEventHeader = message.getJSONObject(COMMON_EVENT_HEADER); - JSONObject otherFields = message.getJSONObject(OTHER_FIELDS); + JSONObject event = message.getJSONObject(EVENT); + JSONObject commonEventHeader = event.getJSONObject(COMMON_EVENT_HEADER); + JSONObject otherFields = event.getJSONObject(OTHER_FIELDS); assertEquals("pnfVal3", otherFields.getString("pnfKey3")); assertEquals("val1", commonEventHeader.getString("key1")); |