summaryrefslogtreecommitdiffstats
path: root/src/test/groovy/org/onap/cps/ncmp/dmi/config
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/groovy/org/onap/cps/ncmp/dmi/config')
-rw-r--r--src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiConfigurationSpec.groovy66
-rw-r--r--src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiPluginConfigSpec.groovy52
2 files changed, 118 insertions, 0 deletions
diff --git a/src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiConfigurationSpec.groovy b/src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiConfigurationSpec.groovy
new file mode 100644
index 00000000..1798c9f2
--- /dev/null
+++ b/src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiConfigurationSpec.groovy
@@ -0,0 +1,66 @@
+/*
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2021 Nordix Foundation
+ * ================================================================================
+ * 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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.cps.ncmp.dmi.config
+
+import org.springframework.beans.factory.annotation.Autowired
+import org.springframework.boot.test.context.SpringBootTest
+import org.springframework.boot.web.client.RestTemplateBuilder
+import org.springframework.test.context.ContextConfiguration
+import spock.lang.Specification
+
+@SpringBootTest
+@ContextConfiguration(classes = [DmiConfiguration.CpsProperties, DmiConfiguration.SdncProperties])
+class DmiConfigurationSpec extends Specification {
+
+ @Autowired
+ DmiConfiguration.CpsProperties cpsProperties
+
+ @Autowired
+ DmiConfiguration.SdncProperties sdncProperties
+
+ def 'CPS properties configuration.'() {
+ expect: 'CPS properties are set to values in test configuration yaml file'
+ cpsProperties.baseUrl == 'some url for cps'
+ cpsProperties.dmiRegistrationUrl == 'some registration url'
+ cpsProperties.authUsername == 'some cps core user'
+ cpsProperties.authPassword == 'some cps core password'
+ }
+
+ def 'SDNC properties configuration.'() {
+ expect: 'SDNC properties are set to values in test configuration yaml file'
+ sdncProperties.authUsername == 'test'
+ sdncProperties.authPassword == 'test'
+ sdncProperties.baseUrl == 'http://test'
+ sdncProperties.topologyId == 'test-topology'
+ }
+
+ def 'Rest template building.'() {
+ given: 'a DMI configuration'
+ DmiConfiguration objectUnderTest = new DmiConfiguration()
+ and: 'a rest template builder'
+ RestTemplateBuilder mockRestTemplateBuilder = Mock(RestTemplateBuilder)
+ when: 'rest template method is invoked'
+ objectUnderTest.restTemplate(mockRestTemplateBuilder)
+ then: 'DMI configuration uses the build method on the template builder'
+ 1 * mockRestTemplateBuilder.build()
+ }
+
+}
diff --git a/src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiPluginConfigSpec.groovy b/src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiPluginConfigSpec.groovy
new file mode 100644
index 00000000..64b82329
--- /dev/null
+++ b/src/test/groovy/org/onap/cps/ncmp/dmi/config/DmiPluginConfigSpec.groovy
@@ -0,0 +1,52 @@
+/*
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2021 Nordix Foundation
+ * ================================================================================
+ * 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.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.cps.ncmp.dmi.config
+
+import org.springframework.beans.factory.annotation.Autowired
+import org.springframework.boot.test.context.SpringBootTest
+import org.springframework.test.context.ContextConfiguration
+import spock.lang.Specification
+import springfox.documentation.spring.web.plugins.Docket
+
+@SpringBootTest
+@ContextConfiguration(classes = [DmiPluginConfig.DmiPluginProperties])
+class DmiPluginConfigSpec extends Specification {
+
+ @Autowired
+ DmiPluginConfig.DmiPluginProperties dmiPluginProperties
+
+ def 'DMI plugin properties configuration.'() {
+ expect: 'DMI plugin properties are set to values in test configuration yaml file'
+ dmiPluginProperties.dmiServiceUrl == 'some url for the dmi service'
+ }
+
+ def 'DMI plugin docket creation.'() {
+ given: 'a DMI plugin configuration'
+ DmiPluginConfig objectUnderTest = new DmiPluginConfig()
+ when: 'the api method is invoked'
+ def result = objectUnderTest.api()
+ then: 'a spring web plugin docket is returned'
+ result instanceof Docket
+ and: 'it is named "dmi-plugin-docket"'
+ result.groupName == 'dmi-plugin-docket'
+ }
+
+}