+ def 'Failing DMI Request - passthrough scenario'() {
+ given: 'failing DMI request'
+ mockNetworkCmProxyDataService.getResourceDataPassThroughRunningForCmHandle(*_) >> { throw new HttpClientRequestException('Error Message Details NCMP', 'Bad Request from DMI', 400) }
+ when: 'the DMI request is executed'
+ def response = mvc.perform(get("$dataNodeBaseEndpointNcmp/ch/testCmHandle/data/ds/ncmp-datastore:passthrough-running?resourceIdentifier=stores:bookstore/categories=100"))
+ .andReturn().response
+ then: 'NCMP service responds with 502 Bad Gateway status'
+ response.status == HttpStatus.BAD_GATEWAY.value()
+ and: 'the NCMP response also contains the original DMI response details'
+ response.contentAsString.contains('400')
+ response.contentAsString.contains('Bad Request from DMI')
+ }
+