Clean up cps temporal related notification code
[cps.git] / cps-events / src / test / groovy / org / onap / cps / event / CpsDataUpdatedEventSpec.groovy
diff --git a/cps-events/src/test/groovy/org/onap/cps/event/CpsDataUpdatedEventSpec.groovy b/cps-events/src/test/groovy/org/onap/cps/event/CpsDataUpdatedEventSpec.groovy
deleted file mode 100644 (file)
index aac0b5a..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * Copyright (c) 2021 Bell Canada.
- * ================================================================================
- * 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.
- * ============LICENSE_END=========================================================
-*/
-
-package org.onap.cps.event
-
-import com.fasterxml.jackson.databind.ObjectMapper
-import com.fasterxml.jackson.databind.node.ObjectNode
-import org.onap.cps.event.model.Content
-import org.onap.cps.event.model.CpsDataUpdatedEvent
-import org.onap.cps.event.model.Data
-import spock.lang.Shared
-import spock.lang.Specification
-
-/**
- * Test class for CpsDataUpdatedEvent.
- */
-class CpsDataUpdatedEventSpec extends Specification {
-
-    def objectMapper = new ObjectMapper()
-
-    final DATASPACE_NAME = 'my-dataspace'
-    final BOOKSTORE_SCHEMA_SET = 'bookstore-schemaset'
-    final ANCHOR_NAME = 'chapters'
-    final EVENT_TIMESTAMP = '2020-12-01T00:00:00.000+0000'
-    final EVENT_ID = '77b8f114-4562-4069-8234-6d059ff742ac'
-    final EVENT_SOURCE = new URI('urn:cps:org.onap.cps')
-    final EVENT_TYPE = 'org.onap.cps.data-updated-event'
-    final EVENT_SCHEMA_V1 = new URI('urn:cps:org.onap.cps:data-updated-event-schema:v1')
-    final EVENT_SCHEMA_V2 = new URI('urn:cps:org.onap.cps:data-updated-event-schema:v2')
-
-    @Shared
-    final DATA = [
-            'test:bookstore': [
-                    'bookstore-name': 'Chapters',
-                    'categories'    : [
-                            ['code' : '01',
-                             'name' : 'SciFi',
-                             'books': [
-                                     ['authors' : ['Iain M. Banks'],
-                                      'lang'    : 'en',
-                                      'price'   : 895,
-                                      'pub_year': '1994',
-                                      'title'   : 'Feersum Endjinn'
-                                     ]
-                             ]
-                            ]
-                    ]
-            ]
-    ]
-
-    def 'Conversion from Event V1 JSON String to CpsDataUpdatedEvent POJO.'() {
-        when: 'event V1 JSON String is converted to CpsDataUpdatedEvent'
-            def notificationMessage = getEventAsJsonStringFromFile('/event-v1.json')
-            def cpsDataUpdatedEvent = objectMapper.readValue(notificationMessage, CpsDataUpdatedEvent.class)
-        then: 'CpsDataUpdatedEvent POJO has the excepted values'
-            cpsDataUpdatedEvent.id == EVENT_ID
-            cpsDataUpdatedEvent.source == EVENT_SOURCE
-            cpsDataUpdatedEvent.schema == EVENT_SCHEMA_V1
-            cpsDataUpdatedEvent.type == EVENT_TYPE
-            def content = cpsDataUpdatedEvent.content
-            content.observedTimestamp == EVENT_TIMESTAMP
-            content.dataspaceName == DATASPACE_NAME
-            content.schemaSetName == BOOKSTORE_SCHEMA_SET
-            content.anchorName == ANCHOR_NAME
-            content.data.getAdditionalProperties() == DATA
-    }
-
-    def 'Conversion from Event V2 JSON String to CpsDataUpdatedEvent POJO'() {
-        when: 'event V2 JSON String is converted to CpsDataUpdatedEvent'
-            def notificationMessage = getEventAsJsonStringFromFile(inputEventJson)
-            def cpsDataUpdatedEvent = objectMapper.readValue(notificationMessage, CpsDataUpdatedEvent.class)
-        then: 'CpsDataUpdatedEvent POJO has the excepted values'
-            with(cpsDataUpdatedEvent) {
-                id == EVENT_ID
-                source == EVENT_SOURCE
-                schema == EVENT_SCHEMA_V2
-                type == EVENT_TYPE
-            }
-            with(cpsDataUpdatedEvent.content) {
-                observedTimestamp == EVENT_TIMESTAMP
-                dataspaceName == DATASPACE_NAME
-                schemaSetName == BOOKSTORE_SCHEMA_SET
-                anchorName == ANCHOR_NAME
-                operation == expectedOperation
-                if (expectedData != null)
-                    data.getAdditionalProperties() == expectedData
-                else
-                    data == null
-            }
-        where:
-            scenario                        | inputEventJson                              || expectedData | expectedOperation
-            'create operation'              | '/event-v2-create-operation.json'           || DATA         | Content.Operation.CREATE
-            'delete operation'              | '/event-v2-delete-operation.json'           || null         | Content.Operation.DELETE
-            'create with additional fields' | '/event-v2-with-additional-properties.json' || DATA         | Content.Operation.CREATE
-    }
-
-    def 'Conversion from CpsDataUpdatedEvent POJO to Event V2 JSON String.'() {
-        given: 'Event V2 content with the Data'
-            def data = new Data()
-            data.withAdditionalProperty('test:bookstore', DATA.'test:bookstore')
-            def content = new Content()
-            content.withAnchorName(ANCHOR_NAME)
-                    .withDataspaceName(DATASPACE_NAME)
-                    .withSchemaSetName(BOOKSTORE_SCHEMA_SET)
-                    .withObservedTimestamp(EVENT_TIMESTAMP)
-                    .withOperation(Content.Operation.CREATE)
-                    .withData(data)
-        and: 'CpsDataUpdatedEvent with the content'
-            def cpsDataUpdateEvent = new CpsDataUpdatedEvent()
-            cpsDataUpdateEvent
-                    .withSchema(EVENT_SCHEMA_V2)
-                    .withId(EVENT_ID)
-                    .withSource(EVENT_SOURCE)
-                    .withType(EVENT_TYPE)
-                    .withContent(content)
-        when: 'CpsDataUpdatedEvent is converted to Event V2 JSON string'
-            def actualMessage = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(cpsDataUpdateEvent)
-        then: 'the created JSON String is same as the expected JSON String'
-            def expectedMessage = getEventAsJsonStringFromFile('/event-v2-create-operation.json')
-            assert actualMessage == expectedMessage
-    }
-
-    def getEventAsJsonStringFromFile(String fileName) {
-        return objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(
-                objectMapper.readValue(
-                        this.class.getResource(fileName).getText('UTF-8'),
-                        ObjectNode.class)
-        )
-    }
-}