From d6bd3aad095e76262e93fb68bbdb98b5f4bd9860 Mon Sep 17 00:00:00 2001 From: emaclee Date: Mon, 4 Jul 2022 23:23:22 +0100 Subject: [PATCH] Coverage for NotificationErrorHandler Issue-ID: CPS-475 Signed-off-by: emaclee Change-Id: Iadcb89c83aaa72afa0839d53a31799316c5966c5 --- .../NotificationErrorHandlerSpec.groovy | 41 ++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 cps-service/src/test/groovy/org/onap/cps/notification/NotificationErrorHandlerSpec.groovy diff --git a/cps-service/src/test/groovy/org/onap/cps/notification/NotificationErrorHandlerSpec.groovy b/cps-service/src/test/groovy/org/onap/cps/notification/NotificationErrorHandlerSpec.groovy new file mode 100644 index 000000000..4cacc4365 --- /dev/null +++ b/cps-service/src/test/groovy/org/onap/cps/notification/NotificationErrorHandlerSpec.groovy @@ -0,0 +1,41 @@ +/* + * ============LICENSE_START======================================================= + * Copyright (C) 2022 Nordix Foundation + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +package org.onap.cps.notification + +import spock.lang.Specification + +class NotificationErrorHandlerSpec extends Specification{ + + NotificationErrorHandler objectUnderTest = new NotificationErrorHandler() + + def 'Logging exception via notification error handler'() { + given: 'redirect system.out to a readable stream' + def systemOutAsStream = new ByteArrayOutputStream() + System.out = new PrintStream(systemOutAsStream) + when: 'some exception occurs' + objectUnderTest.onException(new Exception('sample exception'), 'some context') + then: 'log output results contains the correct error details' + def systemOutAsString = systemOutAsStream.toString() + systemOutAsString.contains('Failed to process') + systemOutAsString.contains('Error cause: sample exception') + systemOutAsString.contains('Error context: [some context]') + } +} + -- 2.16.6