X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=models-sim%2Fpolicy-models-simulators%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fmodels%2Fsimulators%2FMainTest.java;h=73eb69f7a9dc6c4c30005f25549f8cd1aa02e256;hb=71be21fd5b9b52c613bb855f00a79a51e81906dd;hp=e9e8cbdec99fb228d74c9b474d5ef5ad1fecac53;hpb=e8af063efc33258c32d5843d6b3aad7df0216a95;p=policy%2Fmodels.git diff --git a/models-sim/policy-models-simulators/src/test/java/org/onap/policy/models/simulators/MainTest.java b/models-sim/policy-models-simulators/src/test/java/org/onap/policy/models/simulators/MainTest.java index e9e8cbdec..73eb69f7a 100644 --- a/models-sim/policy-models-simulators/src/test/java/org/onap/policy/models/simulators/MainTest.java +++ b/models-sim/policy-models-simulators/src/test/java/org/onap/policy/models/simulators/MainTest.java @@ -2,7 +2,8 @@ * ============LICENSE_START======================================================= * ONAP * ================================================================================ - * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved. + * Modifications Copyright (C) 2023-2024 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,7 +31,9 @@ import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; +import jakarta.ws.rs.core.Response; import java.io.FileNotFoundException; +import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -38,7 +41,6 @@ import java.util.Map.Entry; import java.util.Properties; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; -import javax.ws.rs.core.Response; import org.junit.After; import org.junit.AfterClass; import org.junit.BeforeClass; @@ -52,6 +54,7 @@ import org.onap.policy.common.endpoints.http.server.internal.JettyJerseyServer; import org.onap.policy.common.utils.coder.Coder; import org.onap.policy.common.utils.coder.CoderException; import org.onap.policy.common.utils.network.NetworkUtil; +import org.onap.policy.common.utils.security.SelfSignedKeyStore; public class MainTest { private static final String PARAMETER_FILE = "simParameters.json"; @@ -64,7 +67,7 @@ public class MainTest { * Saves system properties. */ @BeforeClass - public static void setUpBeforeClass() { + public static void setUpBeforeClass() throws IOException, InterruptedException { savedValues = new HashMap<>(); for (String prop : List.of(JettyJerseyServer.SYSTEM_KEYSTORE_PASSWORD_PROPERTY_NAME, @@ -75,11 +78,14 @@ public class MainTest { savedValues.put(prop, System.getProperty(prop)); } - System.setProperty(JettyJerseyServer.SYSTEM_KEYSTORE_PROPERTY_NAME, "src/test/resources/keystore-test"); - System.setProperty(JettyJerseyServer.SYSTEM_KEYSTORE_PASSWORD_PROPERTY_NAME, "kstest"); + System.setProperty(JettyJerseyServer.SYSTEM_KEYSTORE_PROPERTY_NAME, new SelfSignedKeyStore().getKeystoreName()); + System.setProperty(JettyJerseyServer.SYSTEM_KEYSTORE_PASSWORD_PROPERTY_NAME, + SelfSignedKeyStore.KEYSTORE_PASSWORD); - System.setProperty(JettyJerseyServer.SYSTEM_TRUSTSTORE_PROPERTY_NAME, "src/test/resources/keystore-test"); - System.setProperty(JettyJerseyServer.SYSTEM_TRUSTSTORE_PASSWORD_PROPERTY_NAME, "kstest"); + System.setProperty(JettyJerseyServer.SYSTEM_TRUSTSTORE_PROPERTY_NAME, + "src/main/resources/ssl/policy-truststore"); + System.setProperty(JettyJerseyServer.SYSTEM_TRUSTSTORE_PASSWORD_PROPERTY_NAME, + SelfSignedKeyStore.KEYSTORE_PASSWORD); } /** @@ -109,12 +115,12 @@ public class MainTest { @Test public void testConstructor() throws Exception { - assertThatIllegalArgumentException().isThrownBy(() -> new Main("invalidSimParameters.json")) + assertThatIllegalArgumentException().isThrownBy(() -> new Main("invalidDmaapProvider.json")) .withMessage("invalid simulator parameters"); } /** - * Verifies that all of the simulators are brought up and that HTTPS works with at + * Verifies that all the simulators are brought up and that HTTPS works with at * least one of them. */ @Test @@ -125,7 +131,7 @@ public class MainTest { Main.main(new String[] {PARAMETER_FILE}); // don't need to wait long, because buildXxx() does the wait for us - for (int port = 6666; port <= 6670; ++port) { + for (int port : new int[] {6666, 6667, 6668, 6669, 6670, 6680}) { assertTrue("simulator on port " + port, NetworkUtil.isTcpPortOpen(HOST, port, 1, 100)); } @@ -133,16 +139,23 @@ public class MainTest { checkAai(); } + @Test + public void testMainMinimalParameters() { + Main.main(new String[] {"minParameters.json"}); + assertNotNull(Main.getInstance()); + assertTrue(Main.getInstance().isAlive()); + } + private void checkAai() throws HttpClientConfigException { BusTopicParams params = BusTopicParams.builder().clientName("client").hostname(HOST).port(6666).useHttps(true) .allowSelfSignedCerts(true).basePath("aai").build(); HttpClient client = HttpClientFactoryInstance.getClientFactory().build(params); - Response response = client.get("/v8/network/generic-vnfs/generic-vnf/my-vnf"); + Response response = client.get("/v21/network/pnfs/pnf/demo-pnf"); assertEquals(200, response.getStatus()); String result = response.readEntity(String.class); - assertThat(result).contains("USUCP0PCOIL0110UJZZ01-vsrx"); + assertThat(result).contains("model-123456"); } /** @@ -211,7 +224,7 @@ public class MainTest { } }; - // run in another thread so we don't interrupt this thread + // run in another thread, so we don't interrupt this thread LinkedBlockingQueue queue = new LinkedBlockingQueue<>(); Thread thread = new Thread(() -> { try { @@ -235,7 +248,8 @@ public class MainTest { */ @Test public void testBuildTopicServerInvalidProvider() { - assertThatThrownBy(() -> new Main("invalidTopicServer.json").start()); + assertThatThrownBy(() -> new Main("invalidTopicServer.json").start()) + .hasCauseInstanceOf(IllegalArgumentException.class); } /** @@ -243,7 +257,8 @@ public class MainTest { */ @Test public void testBuildTopicServerNoSink() { - assertThatThrownBy(() -> new Main("missingSink.json").start()); + assertThatThrownBy(() -> new Main("missingSink.json").start()) + .hasCauseInstanceOf(IllegalArgumentException.class); } /** @@ -251,6 +266,7 @@ public class MainTest { */ @Test public void testBuildTopicServerNoSource() { - assertThatThrownBy(() -> new Main("missingSource.json").start()); + assertThatThrownBy(() -> new Main("missingSource.json").start()) + .hasCauseInstanceOf(IllegalArgumentException.class); } }