summaryrefslogtreecommitdiffstats
path: root/cps-service
diff options
context:
space:
mode:
authorJoseph Keenan <joseph.keenan@est.tech>2022-05-03 11:39:31 +0000
committerGerrit Code Review <gerrit@onap.org>2022-05-03 11:39:31 +0000
commit47d6b392e984181418b920d0ea8fe658f6375acc (patch)
tree2f36a24e34e7f5465b5c0c32582dbadb270b1974 /cps-service
parenta0b8fb72f9ab872ec554b812db10758592b5a294 (diff)
parent9a87c1476c92aa4a6e1731efc417c01532cc8dc6 (diff)
Merge "Fix sonar code smells"
Diffstat (limited to 'cps-service')
-rw-r--r--cps-service/src/test/groovy/org/onap/cps/spi/model/DataNodeBuilderSpec.groovy (renamed from cps-service/src/test/groovy/org/onap/cps/model/DataNodeBuilderSpec.groovy)19
1 files changed, 17 insertions, 2 deletions
diff --git a/cps-service/src/test/groovy/org/onap/cps/model/DataNodeBuilderSpec.groovy b/cps-service/src/test/groovy/org/onap/cps/spi/model/DataNodeBuilderSpec.groovy
index 7af1ed41c..ce54ead2a 100644
--- a/cps-service/src/test/groovy/org/onap/cps/model/DataNodeBuilderSpec.groovy
+++ b/cps-service/src/test/groovy/org/onap/cps/spi/model/DataNodeBuilderSpec.groovy
@@ -1,7 +1,7 @@
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2021 Pantheon.tech
- * Modifications Copyright (C) 2021 Nordix Foundation.
+ * Modifications Copyright (C) 2021-2022 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,12 +18,15 @@
* ============LICENSE_END=========================================================
*/
-package org.onap.cps.model
+package org.onap.cps.spi.model
import org.onap.cps.TestUtils
import org.onap.cps.spi.model.DataNodeBuilder
import org.onap.cps.utils.YangUtils
import org.onap.cps.yang.YangTextSchemaSourceSetBuilder
+import org.opendaylight.yangtools.yang.common.QName
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier
+import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode
import spock.lang.Specification
class DataNodeBuilderSpec extends Specification {
@@ -157,6 +160,18 @@ class DataNodeBuilderSpec extends Specification {
'multiple entries' | '{"branch": [{"name": "One"}, {"name": "Two"}]}' | 2 | ['/test-tree/branch[@name=\'One\']', '/test-tree/branch[@name=\'Two\']']
}
+ def 'Converting NormalizedNode to a DataNode collection -- edge cases: #scenario.'() {
+ when: 'the normalized node is #node'
+ def result = new DataNodeBuilder().withNormalizedNodeTree(normalizedNode).buildCollection()
+ then: 'the resulting collection contains data nodes for expected list elements'
+ assert result.size() == expectedSize
+ assert result.containsAll(expectedNodes)
+ where: 'following parameters are used'
+ scenario | node | normalizedNode | expectedSize | expectedNodes
+ 'NormalizedNode is null' | 'null' | null | 1 | [ new DataNode() ]
+ 'NormalizedNode is an unsupported type' | 'not supported' | Mock(NormalizedNode) | 0 | [ ]
+ }
+
def static assertLeavesMaps(actualLeavesMap, expectedLeavesMap) {
expectedLeavesMap.each { key, value ->
{