JiriOndrusek commented on code in PR #3919: URL: https://github.com/apache/camel-quarkus/pull/3919#discussion_r940094936
########## integration-tests/google-pubsub/src/main/java/org/apache/camel/quarkus/component/google/pubsub/it/GooglePubsubResource.java: ########## @@ -64,7 +82,95 @@ public Response sendPojoToTopic(String fruitName) { @Produces(MediaType.APPLICATION_JSON) public Response consumePojoFromTopic() { Object response = consumerTemplate - .receiveBody("google-pubsub:{{project.id}}:{{subscription.name}}?synchronousPull=true", 5000L); + .receiveBody("google-pubsub:{{project.id}}:{{google-pubsub.subscription-name}}?synchronousPull=false", 5000L); return Response.ok(response).build(); } + + @Path("/sendToEndpoint") + @POST + public Response sentToEndpoint(String message, + @QueryParam("toEndpoint") String toEndpoint) + throws Exception { + producerTemplate.sendBody(toEndpoint, message); + return Response.created(URI.create("https://camel.apache.org")).build(); + } + + @Path("/getFromEndpoint") + @GET + @Produces(MediaType.TEXT_PLAIN) + public String getSchedulerResult(@QueryParam("fromEndpoint") String fromEndpoint) throws Exception { + return consumerTemplate.receiveBody(fromEndpoint, 5000, String.class); + } + + @Path("receive/subscription/{subscriptionName}") + @GET + @Produces(MediaType.TEXT_PLAIN) + public String receiveFromSubscription(@PathParam("subscriptionName") String subscriptionName) throws Exception { + return consumeEndpoint(subscriptionName, null); + } + + @Path("receive/subscriptionOrdering/{subscriptionName}") + @GET + @Produces(MediaType.TEXT_PLAIN) + public String receiveFromSubscriptionOrdered(@PathParam("subscriptionName") String subscriptionName) throws Exception { + + return consumeEndpoint(subscriptionName, + "?messageOrderingEnabled=true&pubsubEndpoint=us-east1-pubsub.googleapis.com:443"); + } + + private String consumeEndpoint(String subscriptionName, String parameters) { + String url = "google-pubsub:{{project.id}}:{{" + subscriptionName + "}}"; + if (parameters != null && !"".equals(parameters)) { + url = url + parameters; + } + Exchange ex = consumerTemplate.receive(url, 5000); + + if (ex != null) { + return ex.getIn().getBody(String.class); + } + + return null; + } + + @Path("receive/mock/{mockName}") + @GET + @Produces(MediaType.TEXT_PLAIN) + public String mockReceive(@QueryParam("reset") boolean reset, @PathParam("mockName") String mockName) + throws Exception { + MockEndpoint mock = context.getEndpoint(mockName, MockEndpoint.class); + + List<String> results = mock.getExchanges().stream().map(e -> e.getIn().getBody(String.class)) + .collect(Collectors.toList()); + if (reset) { + mock.reset(); Review Comment: I refactored the reset use in a way, that when reset is called, there is enforced, that no messages bould be received during that time. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@camel.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org