aboutsummaryrefslogtreecommitdiffstats
path: root/examples/examples-grpc
diff options
context:
space:
mode:
Diffstat (limited to 'examples/examples-grpc')
-rw-r--r--examples/examples-grpc/pom.xml2
-rw-r--r--examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestRestSimEndpoint.java11
-rw-r--r--examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestServerSim.java8
-rw-r--r--examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/TestApexGrpcExample.java21
4 files changed, 28 insertions, 14 deletions
diff --git a/examples/examples-grpc/pom.xml b/examples/examples-grpc/pom.xml
index 040fc315e..9ccd9d91f 100644
--- a/examples/examples-grpc/pom.xml
+++ b/examples/examples-grpc/pom.xml
@@ -26,7 +26,7 @@
<parent>
<groupId>org.onap.policy.apex-pdp.examples</groupId>
<artifactId>examples</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.1-SNAPSHOT</version>
</parent>
<artifactId>examples-grpc</artifactId>
<name>examples-grpc</name>
diff --git a/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestRestSimEndpoint.java b/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestRestSimEndpoint.java
index 3d46e6a80..56539a1d7 100644
--- a/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestRestSimEndpoint.java
+++ b/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestRestSimEndpoint.java
@@ -1,6 +1,6 @@
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2020-2023 Nordix Foundation.
+ * Copyright (C) 2020-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.
@@ -20,6 +20,8 @@
package org.onap.policy.apex.examples.grpc;
+import static org.awaitility.Awaitility.await;
+
import jakarta.ws.rs.GET;
import jakarta.ws.rs.POST;
import jakarta.ws.rs.Path;
@@ -28,6 +30,7 @@ import jakarta.ws.rs.core.Response;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
+import java.util.concurrent.TimeUnit;
import org.slf4j.ext.XLogger;
import org.slf4j.ext.XLoggerFactory;
@@ -52,8 +55,12 @@ public class GrpcTestRestSimEndpoint {
public Response dcaeClOutput(@QueryParam("timeout") final int timeout) throws IOException {
String createSubscriptionRequest =
Files.readString(Paths.get("src/main/resources/examples/events/APEXgRPC/CreateSubscriptionEvent.json"));
- LOGGER.info("Create subscription request received: \n {}", createSubscriptionRequest);
+ LOGGER.info("Create subscription request received (on a timeout of {}): \n {} ",
+ timeout, createSubscriptionRequest);
+ await().pollDelay(4, TimeUnit.SECONDS)
+ .atMost(5, TimeUnit.SECONDS)
+ .until(() -> true);
return Response.status(200).entity(createSubscriptionRequest).build();
}
diff --git a/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestServerSim.java b/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestServerSim.java
index 46e0ea254..4dc638551 100644
--- a/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestServerSim.java
+++ b/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/GrpcTestServerSim.java
@@ -1,6 +1,6 @@
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2020,2023 Nordix Foundation.
+ * Copyright (C) 2020, 2023-2024 Nordix Foundation.
* Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,11 +33,11 @@ import org.onap.policy.simulators.CdsSimulator;
*/
public class GrpcTestServerSim {
private static final String HOST = "localhost";
- private HttpServletServer restServer;
- private CdsSimulator grpcServer;
+ private final HttpServletServer restServer;
+ private final CdsSimulator grpcServer;
/**
- * Instantiates a new REST simulator for DMaaP requests.
+ * Instantiates a new REST simulator for requests.
*
* @throws InterruptedException interrupted exception
* @throws IOException io exception
diff --git a/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/TestApexGrpcExample.java b/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/TestApexGrpcExample.java
index ee1744f0e..e6d71e1ff 100644
--- a/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/TestApexGrpcExample.java
+++ b/examples/examples-grpc/src/test/java/org/onap/policy/apex/examples/grpc/TestApexGrpcExample.java
@@ -41,6 +41,7 @@ import org.onap.policy.apex.service.engine.main.ApexMain;
* CDS is used to send a final output Log event on POLICY_CL_MGT topic.
*/
class TestApexGrpcExample {
+
@Test
void testGrpcExample() throws Exception {
// @formatter:off
@@ -78,18 +79,24 @@ class TestApexGrpcExample {
String getLoggedEventUrl = "http://localhost:54321/GrpcTestRestSim/sim/event/getLoggedEvent";
// wait for success response code to be received, until a timeout
- await().atMost(20000, TimeUnit.MILLISECONDS).until(() ->
- 200 == client.target(getLoggedEventUrl).request("application/json").get().getStatus());
+ await().atMost(50000, TimeUnit.MILLISECONDS)
+ .pollInterval(10000, TimeUnit.MILLISECONDS)
+ .until(() -> 200 == client.target(getLoggedEventUrl).request("application/json").get().getStatus());
+
apexMain.shutdown();
+
Response response = client.target(getLoggedEventUrl).request("application/json").get();
sim.tearDown();
+
String responseEntity = response.readEntity(String.class);
- String expectedLoggedOutputEvent = Files
- .readString(Paths.get("src/main/resources/examples/events/APEXgRPC/LogEvent.json")).replaceAll("\r", "");
- String expectedStatusEvent =
- Files.readString(Paths.get("src/main/resources/examples/events/APEXgRPC/CDSResponseStatusEvent.json"))
- .replaceAll("\r", "");
+ var logFileJson = "src/main/resources/examples/events/APEXgRPC/LogEvent.json";
+ String expectedLoggedOutputEvent = Files.readString(Paths.get(logFileJson)).replaceAll("\r", "");
+
+ var cdsResponseJson = "src/main/resources/examples/events/APEXgRPC/CDSResponseStatusEvent.json";
+ String expectedStatusEvent = Files.readString(Paths.get(cdsResponseJson)).replaceAll("\r", "");
+
// Both LogEvent and CDSResponseStatusEvent are generated from the final state in the policy
assertThat(responseEntity).contains(expectedStatusEvent).contains(expectedLoggedOutputEvent);
+ client.close();
}
} \ No newline at end of file