aboutsummaryrefslogtreecommitdiffstats
path: root/cps-events/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'cps-events/src/test')
-rw-r--r--cps-events/src/test/groovy/org/onap/cps/event/CpsDataUpdatedEventSpec.groovy145
-rw-r--r--cps-events/src/test/resources/event-v1.json34
-rw-r--r--cps-events/src/test/resources/event-v2-create-operation.json36
-rw-r--r--cps-events/src/test/resources/event-v2-delete-operation.json13
-rw-r--r--cps-events/src/test/resources/event-v2-with-additional-properties.json36
5 files changed, 0 insertions, 264 deletions
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
index aac0b5aba..000000000
--- a/cps-events/src/test/groovy/org/onap/cps/event/CpsDataUpdatedEventSpec.groovy
+++ /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)
- )
- }
-}
diff --git a/cps-events/src/test/resources/event-v1.json b/cps-events/src/test/resources/event-v1.json
deleted file mode 100644
index 753426a60..000000000
--- a/cps-events/src/test/resources/event-v1.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "schema": "urn:cps:org.onap.cps:data-updated-event-schema:v1",
- "id": "77b8f114-4562-4069-8234-6d059ff742ac",
- "source": "urn:cps:org.onap.cps",
- "type": "org.onap.cps.data-updated-event",
- "content": {
- "observedTimestamp": "2020-12-01T00:00:00.000+0000",
- "dataspaceName": "my-dataspace",
- "schemaSetName": "bookstore-schemaset",
- "anchorName": "chapters",
- "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"
- }
- ]
- }
- ]
- }
- }
- }
-}
diff --git a/cps-events/src/test/resources/event-v2-create-operation.json b/cps-events/src/test/resources/event-v2-create-operation.json
deleted file mode 100644
index 92ecab34f..000000000
--- a/cps-events/src/test/resources/event-v2-create-operation.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "schema": "urn:cps:org.onap.cps:data-updated-event-schema:v2",
- "id": "77b8f114-4562-4069-8234-6d059ff742ac",
- "source": "urn:cps:org.onap.cps",
- "type": "org.onap.cps.data-updated-event",
- "content": {
- "observedTimestamp": "2020-12-01T00:00:00.000+0000",
- "dataspaceName": "my-dataspace",
- "schemaSetName": "bookstore-schemaset",
- "anchorName": "chapters",
- "operation" : "CREATE",
- "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"
- }
- ]
- }
- ]
- }
- }
- }
-}
-
diff --git a/cps-events/src/test/resources/event-v2-delete-operation.json b/cps-events/src/test/resources/event-v2-delete-operation.json
deleted file mode 100644
index e003088bf..000000000
--- a/cps-events/src/test/resources/event-v2-delete-operation.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "schema": "urn:cps:org.onap.cps:data-updated-event-schema:v2",
- "id": "77b8f114-4562-4069-8234-6d059ff742ac",
- "source": "urn:cps:org.onap.cps",
- "type": "org.onap.cps.data-updated-event",
- "content": {
- "observedTimestamp": "2020-12-01T00:00:00.000+0000",
- "dataspaceName": "my-dataspace",
- "schemaSetName": "bookstore-schemaset",
- "anchorName": "chapters",
- "operation" : "DELETE"
- }
-} \ No newline at end of file
diff --git a/cps-events/src/test/resources/event-v2-with-additional-properties.json b/cps-events/src/test/resources/event-v2-with-additional-properties.json
deleted file mode 100644
index 4e2db6898..000000000
--- a/cps-events/src/test/resources/event-v2-with-additional-properties.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "schema": "urn:cps:org.onap.cps:data-updated-event-schema:v2",
- "id": "77b8f114-4562-4069-8234-6d059ff742ac",
- "source": "urn:cps:org.onap.cps",
- "type": "org.onap.cps.data-updated-event",
- "content": {
- "observedTimestamp": "2020-12-01T00:00:00.000+0000",
- "dataspaceName": "my-dataspace",
- "schemaSetName": "bookstore-schemaset",
- "anchorName": "chapters",
- "operation" : "CREATE",
- "additionalField" : "value",
- "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"
- }
- ]
- }
- ]
- }
- }
- }
-}