From f01256145bd9abb97cb9fba3019dcaccaeeca509 Mon Sep 17 00:00:00 2001 From: jhh Date: Wed, 18 Nov 2020 16:40:39 -0600 Subject: verify schema validation for any policy type Issue-ID: POLICY-2880 Signed-off-by: jhh Change-Id: I0cc6e8967d42d347415857dc77976f2b8ab86516 Signed-off-by: jhh --- .../src/test/resources/lifecycle.kmodule | 8 +- .../schemas/onap.policies.typeA-1.0.0.schema.json | 106 +++++++++++++++++++++ .../resources/tosca-policy-other-unvalidated.json | 22 +++++ .../resources/tosca-policy-other-validated.json | 22 +++++ .../tosca-policy-other-validation-error.json | 21 ++++ .../src/test/resources/tosca-policy-other.json | 22 ----- 6 files changed, 176 insertions(+), 25 deletions(-) create mode 100644 feature-lifecycle/src/test/resources/schemas/onap.policies.typeA-1.0.0.schema.json create mode 100644 feature-lifecycle/src/test/resources/tosca-policy-other-unvalidated.json create mode 100644 feature-lifecycle/src/test/resources/tosca-policy-other-validated.json create mode 100644 feature-lifecycle/src/test/resources/tosca-policy-other-validation-error.json delete mode 100644 feature-lifecycle/src/test/resources/tosca-policy-other.json (limited to 'feature-lifecycle/src/test/resources') diff --git a/feature-lifecycle/src/test/resources/lifecycle.kmodule b/feature-lifecycle/src/test/resources/lifecycle.kmodule index 529730bd..56ca0923 100644 --- a/feature-lifecycle/src/test/resources/lifecycle.kmodule +++ b/feature-lifecycle/src/test/resources/lifecycle.kmodule @@ -3,7 +3,7 @@ ============LICENSE_START======================================================= feature-controller-logging ================================================================================ - Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved. ================================================================================ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,8 +20,10 @@ --> - + + - + \ No newline at end of file diff --git a/feature-lifecycle/src/test/resources/schemas/onap.policies.typeA-1.0.0.schema.json b/feature-lifecycle/src/test/resources/schemas/onap.policies.typeA-1.0.0.schema.json new file mode 100644 index 00000000..91712460 --- /dev/null +++ b/feature-lifecycle/src/test/resources/schemas/onap.policies.typeA-1.0.0.schema.json @@ -0,0 +1,106 @@ +{ + "definitions": {}, + "$schema": "http://json-schema.org/draft-07/schema#", + "$id": "http://www.onap.org/policy/models/schemas/onap.policies.typeA.schema.json", + "type": "object", + "title": "The Root Schema", + "required": [ + "type", + "type_version", + "version", + "metadata", + "properties" + ], + "properties": { + "type": { + "$id": "#/properties/type", + "type": "string", + "title": "Policy Type", + "default": "onap.policies.typeA", + "examples": [ + "onap.policies.typeA" + ], + "pattern": "^(.+)$" + }, + "type_version": { + "$id": "#/properties/type_version", + "type": "string", + "title": "Policy Type Version", + "default": "1.0.0", + "examples": [ + "1.0.0" + ], + "pattern": "^(.+)$" + }, + "name": { + "$id": "#/properties/name", + "type": "string", + "title": "Policy Name", + "default": "", + "examples": [ + "example" + ], + "pattern": "^(.*)$" + }, + "version": { + "$id": "#/properties/version", + "type": "string", + "title": "Policy Version", + "default": "1.0.0", + "examples": [ + "1.0.0" + ], + "pattern": "^(.+)$" + }, + "metadata": { + "$id": "#/properties/metadata", + "type": "object", + "title": "Metadata", + "required": [ + "policy-id" + ], + "properties": { + "policy-id": { + "$id": "#/properties/metadata/properties/policy-id", + "type": "string", + "title": "Policy ID", + "examples": [ + "operational.restart" + ], + "pattern": "^(.+)$" + } + } + }, + "properties": { + "$id": "#/properties/properties", + "type": "object", + "title": "Properties", + "required": [ + "fieldA", + "fieldB" + ], + "properties": { + "fieldA": { + "$id": "#/properties/properties/properties/fieldA", + "type": "string", + "title": "Field A", + "examples": [ + "FieldA" + ], + "pattern": "^(.+)$" + }, + "fieldB": { + "$id": "#/properties/properties/properties/fieldB", + "type": "integer", + "title": "Timeout in seconds", + "minimum": 1, + "maximum": 5, + "default": 1, + "examples": [ + 3 + ] + } + } + } + } +} \ No newline at end of file diff --git a/feature-lifecycle/src/test/resources/tosca-policy-other-unvalidated.json b/feature-lifecycle/src/test/resources/tosca-policy-other-unvalidated.json new file mode 100644 index 00000000..64a59b2a --- /dev/null +++ b/feature-lifecycle/src/test/resources/tosca-policy-other-unvalidated.json @@ -0,0 +1,22 @@ +{ + "tosca_definitions_version": "tosca_simple_yaml_1_0_0", + "topology_template": { + "policies": [ + { + "other-unvalidated": { + "type": "onap.policies.type1.type2", + "type_version": "1.0.0", + "name": "other-unvalidated", + "version": "1.0.0", + "metadata": { + "policy-id": "other-unvalidated" + }, + "properties": { + "field1": "abc", + "field2": 2 + } + } + } + ] + } +} diff --git a/feature-lifecycle/src/test/resources/tosca-policy-other-validated.json b/feature-lifecycle/src/test/resources/tosca-policy-other-validated.json new file mode 100644 index 00000000..e79435c6 --- /dev/null +++ b/feature-lifecycle/src/test/resources/tosca-policy-other-validated.json @@ -0,0 +1,22 @@ +{ + "tosca_definitions_version": "tosca_simple_yaml_1_0_0", + "topology_template": { + "policies": [ + { + "other-validated": { + "type": "onap.policies.typeA", + "type_version": "1.0.0", + "name": "other-validated", + "version": "1.0.0", + "metadata": { + "policy-id": "other-validated" + }, + "properties": { + "fieldA": "abc", + "fieldB": 2 + } + } + } + ] + } +} diff --git a/feature-lifecycle/src/test/resources/tosca-policy-other-validation-error.json b/feature-lifecycle/src/test/resources/tosca-policy-other-validation-error.json new file mode 100644 index 00000000..f7af04bb --- /dev/null +++ b/feature-lifecycle/src/test/resources/tosca-policy-other-validation-error.json @@ -0,0 +1,21 @@ +{ + "tosca_definitions_version": "tosca_simple_yaml_1_0_0", + "topology_template": { + "policies": [ + { + "other-validation-error": { + "type": "onap.policies.typeA", + "type_version": "1.0.0", + "name": "other-validation-error", + "version": "1.0.0", + "metadata": { + "policy-id": "other-validation-error" + }, + "properties": { + "fieldA": "abc" + } + } + } + ] + } +} diff --git a/feature-lifecycle/src/test/resources/tosca-policy-other.json b/feature-lifecycle/src/test/resources/tosca-policy-other.json deleted file mode 100644 index 33aed19b..00000000 --- a/feature-lifecycle/src/test/resources/tosca-policy-other.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "tosca_definitions_version": "tosca_simple_yaml_1_0_0", - "topology_template": { - "policies": [ - { - "other": { - "type": "onap.policies.type1.type2", - "type_version": "1.0.0", - "name": "other", - "version": "1.0.0", - "metadata": { - "policy-id": "other" - }, - "properties": { - "field1": "abc", - "field2": 2 - } - } - } - ] - } -} -- cgit 1.2.3-korg