X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cps-ncmp-service%2Fsrc%2Ftest%2Fgroovy%2Forg%2Fonap%2Fcps%2Fncmp%2Fapi%2Fmodels%2FCmHandleRegistrationResponseSpec.groovy;h=d76f912234b7653417c8955b0c2bbb5758e46d80;hb=c29a5fe32db7efb0fdefa3a3d020110aab9731b4;hp=902ba4e5d001a0c8e27787c97a2675bbcec117ca;hpb=960aabcac27b884b92061e946238fcc7a33261ed;p=cps.git diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/models/CmHandleRegistrationResponseSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/models/CmHandleRegistrationResponseSpec.groovy index 902ba4e5d..d76f91223 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/models/CmHandleRegistrationResponseSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/models/CmHandleRegistrationResponseSpec.groovy @@ -1,6 +1,7 @@ /* * ============LICENSE_START======================================================= * Copyright (C) 2022 Bell Canada + * Modifications Copyright (C) 2023 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,14 +21,17 @@ package org.onap.cps.ncmp.api.models -import org.onap.cps.ncmp.api.models.CmHandleRegistrationResponse.RegistrationError +import static org.onap.cps.ncmp.api.NcmpResponseStatus.CM_HANDLE_ALREADY_EXIST +import static org.onap.cps.ncmp.api.NcmpResponseStatus.UNKNOWN_ERROR + import org.onap.cps.ncmp.api.models.CmHandleRegistrationResponse.Status import spock.lang.Specification +import java.util.stream.Collectors class CmHandleRegistrationResponseSpec extends Specification { - def 'Successful CmHandle Registration Response'() { - when: 'CMHandle response is created' + def 'Successful cm-handle Registration Response'() { + when: 'cm-handle response is created' def cmHandleRegistrationResponse = CmHandleRegistrationResponse.createSuccessResponse('cmHandle') then: 'a success response is returned' with(cmHandleRegistrationResponse) { @@ -35,34 +39,51 @@ class CmHandleRegistrationResponseSpec extends Specification { assert it.status == Status.SUCCESS } and: 'error details are null' - cmHandleRegistrationResponse.registrationError == null + cmHandleRegistrationResponse.ncmpResponseStatus == null cmHandleRegistrationResponse.errorText == null } - def 'Failed Cm Handle Registration Response: for unexpected exception'() { - when: 'CMHandle response is created for an unexpected exception' + def 'Failed cm-handle Registration Response: for unexpected exception'() { + when: 'cm-handle response is created for an unexpected exception' def cmHandleRegistrationResponse = - CmHandleRegistrationResponse.createFailureResponse('cmHandle', new RuntimeException('unexpected error')) + CmHandleRegistrationResponse.createFailureResponse('cmHandle', new Exception('unexpected error')) then: 'the response is created with expected value' with(cmHandleRegistrationResponse) { - assert it.registrationError == RegistrationError.UNKNOWN_ERROR + assert it.ncmpResponseStatus == UNKNOWN_ERROR assert it.cmHandle == 'cmHandle' assert errorText == 'unexpected error' } } - def 'Failed Cm Handle Registration Response: for known error'() { - when: 'CMHandle response is created for known error' - def cmHandleRegistrationResponse = - CmHandleRegistrationResponse.createFailureResponse('cmHandle', RegistrationError.CM_HANDLE_ALREADY_EXIST) + def 'Failed cm-handle Registration Response'() { + when: 'cm-handle failure response is created' + def cmHandleRegistrationResponse = + CmHandleRegistrationResponse.createFailureResponse('cmHandle', CM_HANDLE_ALREADY_EXIST) then: 'the response is created with expected value' - with(cmHandleRegistrationResponse) { - assert it.registrationError == RegistrationError.CM_HANDLE_ALREADY_EXIST - assert it.cmHandle == 'cmHandle' - assert it.status == Status.FAILURE - assert errorText == RegistrationError.CM_HANDLE_ALREADY_EXIST.errorText - } + with(cmHandleRegistrationResponse) { + assert it.ncmpResponseStatus == CM_HANDLE_ALREADY_EXIST + assert it.cmHandle == 'cmHandle' + assert it.status == Status.FAILURE + assert errorText == CM_HANDLE_ALREADY_EXIST.message + } + } + + def 'Failed cm-handle Registration with multiple responses.'() { + when: 'cm-handle failure response is created for 2 xpaths' + def cmHandleRegistrationResponses = + CmHandleRegistrationResponse.createFailureResponses(["somePathWithId[@id='123']","somePathWithId[@id='456']"], CM_HANDLE_ALREADY_EXIST) + then: 'the response has the correct cm handle ids' + assert cmHandleRegistrationResponses.size() == 2 + assert cmHandleRegistrationResponses.stream().map(it -> it.cmHandle).collect(Collectors.toList()) + .containsAll(['123','456']) + } + def 'Failed cm-handle Registration with multiple responses with an unexpected xpath.'() { + when: 'cm-handle failure response is created for one valid and one unexpected xpath' + def cmHandleRegistrationResponses = + CmHandleRegistrationResponse.createFailureResponses(["somePathWithId[@id='123']","valid/xpath/without-id[@key='123']"], CM_HANDLE_ALREADY_EXIST) + then: 'the response has only one entry' + assert cmHandleRegistrationResponses.size() == 1 } }