Introduce Instrumentation
[cps.git] / cps-rest / src / test / groovy / org / onap / cps / rest / exceptions / CpsRestExceptionHandlerSpec.groovy
index 0821b6b..535b83d 100644 (file)
@@ -1,7 +1,7 @@
 /*
  *  ============LICENSE_START=======================================================
  *  Copyright (C) 2020 Pantheon.tech
- *  Modifications Copyright (C) 2021-2022 Nordix Foundation
+ *  Modifications Copyright (C) 2021-2023 Nordix Foundation
  *  Modifications Copyright (C) 2021 Bell Canada.
  *  Modifications Copyright (C) 2022 TechMahindra Ltd.
  *  Modifications Copyright (C) 2022 Deutsche Telekom AG
@@ -136,8 +136,18 @@ class CpsRestExceptionHandlerSpec extends Specification {
                 "Anchor with name ${existingObjectName} already exists for ${dataspaceName}.")
     }
 
+    def 'Request with a schema set in use exception returns HTTP Status Conflict.'() {
+        when: 'Schema set in use exception is thrown by the service'
+            setupTestException(new SchemaSetInUseException(dataspaceName, existingObjectName))
+            def response = performTestRequest()
+        then: 'a HTTP conflict response is returned with correct message an details'
+            assertTestResponse(response, CONFLICT,
+                "Schema Set is being used.",
+                "Schema Set with name ${existingObjectName} in dataspace ${dataspaceName} is having Anchor records associated.")
+    }
+
     def 'Get request with a #exceptionThrown.class.simpleName returns HTTP Status Bad Request'() {
-        when: 'CPS validation exception is thrown by the service'
+        when: '#exceptionThrown.class.simpleName is thrown by the service'
             setupTestException(exceptionThrown)
             def response = performTestRequest()
         then: 'an HTTP Bad Request response is returned with correct message and details'