From c9dfb9a5f8091891710e2b718d028c6a6d741866 Mon Sep 17 00:00:00 2001 From: Jim Hahn Date: Tue, 6 Oct 2020 14:46:08 -0400 Subject: Fix random failures in CdsSimulatorTest Modified CdsSimulatorTest to allocate a unique server port for each test. Issue-ID: POLICY-2862 Change-Id: I4a7ed299c7458dade7444c6c8f2b476e24500dd4 Signed-off-by: Jim Hahn --- .../src/main/java/org/onap/policy/simulators/Util.java | 2 +- .../java/org/onap/policy/simulators/CdsSimulatorTest.java | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/Util.java b/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/Util.java index efc40367b..d9fb52bd9 100644 --- a/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/Util.java +++ b/models-interactions/model-simulators/src/main/java/org/onap/policy/simulators/Util.java @@ -52,7 +52,7 @@ public class Util { private static final String CANNOT_PROCESS_PARAMETERS = "cannot parse parameters "; private static final String CANNOT_CONNECT = "cannot connect to port "; - private static final String LOCALHOST = "localhost"; + public static final String LOCALHOST = "localhost"; private Util() { // Prevent instantiation of this class diff --git a/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/CdsSimulatorTest.java b/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/CdsSimulatorTest.java index fea03e3e4..6e9c2239c 100644 --- a/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/CdsSimulatorTest.java +++ b/models-interactions/model-simulators/src/test/java/org/onap/policy/simulators/CdsSimulatorTest.java @@ -45,6 +45,7 @@ import org.onap.ccsdk.cds.controllerblueprints.processing.api.ExecutionServiceIn import org.onap.ccsdk.cds.controllerblueprints.processing.api.ExecutionServiceOutput; import org.onap.policy.common.utils.coder.CoderException; import org.onap.policy.common.utils.coder.StandardCoder; +import org.onap.policy.common.utils.network.NetworkUtil; import org.onap.policy.common.utils.resources.ResourceUtils; public class CdsSimulatorTest { @@ -52,9 +53,15 @@ public class CdsSimulatorTest { private CdsSimulator sim; + /** + * Starts the simulator, allocating a unique port for each test so we don't have to + * wait for the prior server to shut down. + */ @Before public void setUp() throws Exception { - sim = Util.buildCdsSim(); + int port = NetworkUtil.allocPort(); + sim = new CdsSimulator(Util.LOCALHOST, port); + sim.start(); } @After @@ -66,7 +73,7 @@ public class CdsSimulatorTest { public void test() throws Exception { String reqstr = IOUtils.toString(getClass().getResource("cds/cds.request.json"), StandardCharsets.UTF_8); ExecutionServiceInput request = coder.decode(reqstr, ExecutionServiceInput.class); - ManagedChannel channel = NettyChannelBuilder.forAddress("localhost", sim.getPort()) + ManagedChannel channel = NettyChannelBuilder.forAddress(Util.LOCALHOST, sim.getPort()) .nameResolverFactory(new DnsNameResolverProvider()) .loadBalancerFactory(new PickFirstLoadBalancerProvider()).usePlaintext().build(); @@ -118,7 +125,7 @@ public class CdsSimulatorTest { @Test public void testGetResponseString() throws IOException, CoderException, ParseException { - CdsSimulator cdsSimulator = new CdsSimulator("localhost", sim.getPort()); + CdsSimulator cdsSimulator = new CdsSimulator(Util.LOCALHOST, sim.getPort()); String reqstr = ResourceUtils.getResourceAsString( "org/onap/policy/simulators/cds/cds.request.json"); String responseqstr = ResourceUtils.getResourceAsString( -- cgit 1.2.3-korg