From fb826f241cb78b70910f842bbed0bb507b1236ca Mon Sep 17 00:00:00 2001 From: "a.sreekumar" Date: Fri, 3 Jul 2020 11:08:04 +0100 Subject: Fixing issue with policy chaining after CDS request failure in APEX Change-Id: Id27343c21caaf69e30ee13076a2963c256fab55d Issue-ID: POLICY-2687 Signed-off-by: a.sreekumar --- .../plugins/event/carrier/grpc/ApexGrpcProducer.java | 6 +++--- .../event/carrier/grpc/ApexGrpcProducerTest.java | 19 ++++++++++--------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/main/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducer.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/main/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducer.java index 2e4736208..6046a310b 100644 --- a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/main/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducer.java +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/main/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducer.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2020 Nordix Foundation. + * Modifications Copyright (C) 2020 Bell Canada. 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. @@ -124,9 +125,8 @@ public class ApexGrpcProducer extends ApexPluginsEventProducer implements CdsPro } if (!EventType.EVENT_COMPONENT_EXECUTED.equals(cdsResponse.get().getStatus().getEventType())) { - String errorMessage = "Sending event \"" + eventName + "\" by " + this.name + " to CDS failed, " - + "response from CDS:\n" + cdsResponse.get(); - throw new ApexEventRuntimeException(errorMessage); + LOGGER.error("Sending event \"{}\" by {} to CDS failed. Response from CDS:\n{}", eventName, this.name, + cdsResponse.get()); } consumeEvent(executionId, cdsResponse.get()); diff --git a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/test/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducerTest.java b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/test/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducerTest.java index 53d191e14..13ecaba6a 100644 --- a/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/test/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducerTest.java +++ b/plugins/plugins-event/plugins-event-carrier/plugins-event-carrier-grpc/src/test/java/org/onap/policy/apex/plugins/event/carrier/grpc/ApexGrpcProducerTest.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2020 Nordix Foundation. + * Modifications Copyright (C) 2020 Bell Canada. 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. @@ -20,7 +21,6 @@ package org.onap.policy.apex.plugins.event.carrier.grpc; -import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.mockito.Mockito.spy; import java.nio.file.Files; @@ -37,6 +37,7 @@ import org.onap.policy.cds.client.CdsProcessorGrpcClient; @RunWith(MockitoJUnitRunner.class) public class ApexGrpcProducerTest { + private static final String PRODUCER_NAME = "TestApexGrpcProducer"; private static final String HOST = "localhost"; @Mock private CdsProcessorGrpcClient grpcClient; @@ -56,30 +57,30 @@ public class ApexGrpcProducerTest { @Test(expected = ApexEventException.class) public void testInit_fail() throws ApexEventException { - apexGrpcProducer.init("TestApexGrpcProducer", new EventHandlerParameters()); + apexGrpcProducer.init(PRODUCER_NAME, new EventHandlerParameters()); } @Test public void testInit_pass() { // should not throw an exception - Assertions.assertThatCode(() -> apexGrpcProducer.init("TestApexGrpcProducer", eventHandlerParameters)) + Assertions.assertThatCode(() -> apexGrpcProducer.init(PRODUCER_NAME, eventHandlerParameters)) .doesNotThrowAnyException(); } @Test public void testStop() throws ApexEventException { - apexGrpcProducer.init("TestApexGrpcProducer", eventHandlerParameters); + apexGrpcProducer.init(PRODUCER_NAME, eventHandlerParameters); // should not throw an exception Assertions.assertThatCode(() -> apexGrpcProducer.stop()).doesNotThrowAnyException(); } @Test public void testSendEvent() throws ApexEventException { - apexGrpcProducer.init("TestApexGrpcProducer", eventHandlerParameters); - assertThatThrownBy(() -> { - apexGrpcProducer.sendEvent(123, null, "grpcEvent", - Files.readString(Paths.get("src/test/resources/executionServiceInputEvent.json"))); - }).hasMessageContaining("UNAVAILABLE: io exception"); + apexGrpcProducer.init(PRODUCER_NAME, eventHandlerParameters); + Assertions + .assertThatCode(() -> apexGrpcProducer.sendEvent(123, null, "grpcEvent", + Files.readString(Paths.get("src/test/resources/executionServiceInputEvent.json")))) + .doesNotThrowAnyException(); } private void populateEventHandlerParameters(String host, int timeout) { -- cgit 1.2.3-korg