X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cps-ncmp-service%2Fsrc%2Ftest%2Fgroovy%2Forg%2Fonap%2Fcps%2Fncmp%2Fapi%2Fimpl%2Fclient%2FDmiRestClientSpec.groovy;h=394df1d076b14146ab992d39914eb970205f3dd4;hb=d69742c1f02585ae5d82f49542581698367e9cde;hp=809c48a619568ba7b864c59764adb8798e44ab44;hpb=d469924472af98ce13c2bcb3d8b053d45322e806;p=cps.git diff --git a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/client/DmiRestClientSpec.groovy b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/client/DmiRestClientSpec.groovy index 809c48a61..394df1d07 100644 --- a/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/client/DmiRestClientSpec.groovy +++ b/cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/api/impl/client/DmiRestClientSpec.groovy @@ -1,6 +1,7 @@ /* * ============LICENSE_START======================================================= * Copyright (C) 2021 Nordix Foundation + * Modifications Copyright (C) 2022 Bell Canada * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,49 +22,36 @@ package org.onap.cps.ncmp.api.impl.client import org.onap.cps.ncmp.api.impl.config.NcmpConfiguration +import org.spockframework.spring.SpringBean +import org.springframework.beans.factory.annotation.Autowired +import org.springframework.boot.test.context.SpringBootTest import org.springframework.http.HttpEntity import org.springframework.http.HttpHeaders +import org.springframework.http.HttpMethod import org.springframework.http.ResponseEntity +import org.springframework.test.context.ContextConfiguration import org.springframework.web.client.RestTemplate import spock.lang.Specification -import org.springframework.http.HttpMethod +@SpringBootTest +@ContextConfiguration(classes = [NcmpConfiguration.DmiProperties, DmiRestClient]) class DmiRestClientSpec extends Specification { - def mockDmiProperties = Mock(NcmpConfiguration.DmiProperties) - def mockRestTemplate = Mock(RestTemplate) - def objectUnderTest = new DmiRestClient(mockRestTemplate, mockDmiProperties) + @SpringBean + RestTemplate mockRestTemplate = Mock(RestTemplate) - def 'DMI PUT operation.'() { - given: 'a PUT url' - def getResourceDataUrl = 'http://some-uri/getResourceDataUrl' - and: 'dmi properties' - setupTestConfigurationData() - and: 'the rest template returns a valid response entity' - def mockResponseEntity = Mock(ResponseEntity) - mockRestTemplate.exchange(getResourceDataUrl, HttpMethod.PUT, _ as HttpEntity, Object.class) >> mockResponseEntity - when: 'PUT operation is invoked' - def result = objectUnderTest.putOperationWithJsonData(getResourceDataUrl, 'json-data', new HttpHeaders()) - then: 'the output of the method is equal to the output from the test template' - result == mockResponseEntity - } + @Autowired + DmiRestClient objectUnderTest + def resourceUrl = 'some url' - def 'DMI POST operation.'() { - given: 'a POST url' - def getResourceDataUrl = 'http://some-uri/createResourceDataUrl' - and: 'dmi properties' - setupTestConfigurationData() - and: 'the rest template returns a valid response entity' + def 'DMI POST operation with JSON.'() { + given: 'the rest template returns a valid response entity' def mockResponseEntity = Mock(ResponseEntity) - mockRestTemplate.postForEntity(getResourceDataUrl, _ as HttpEntity, String.class) >> mockResponseEntity + mockRestTemplate.postForEntity(resourceUrl, _ as HttpEntity, Object.class) >> mockResponseEntity when: 'POST operation is invoked' - def result = objectUnderTest.postOperationWithJsonData(getResourceDataUrl, 'json-data', new HttpHeaders()) + def result = objectUnderTest.postOperationWithJsonData(resourceUrl, 'json-data') then: 'the output of the method is equal to the output from the test template' result == mockResponseEntity } - def setupTestConfigurationData() { - mockDmiProperties.authUsername >> 'some-username' - mockDmiProperties.authPassword >> 'some-password' - } -} \ No newline at end of file +}