aboutsummaryrefslogtreecommitdiffstats
path: root/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap
diff options
context:
space:
mode:
authorSteve Siani <alphonse.steve.siani.djissitchi@ibm.com>2019-03-28 15:27:35 -0400
committerSteve Siani <alphonse.steve.siani.djissitchi@ibm.com>2019-04-01 17:43:29 -0400
commite8db37654457e9a83136da39006e962048295cf5 (patch)
tree14c15253f43ed8d5fe9a2504ffd17a16d7e1c0e5 /ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap
parentcb74139eb31d5bdaa6eb390ae7eebaf49729b7e4 (diff)
Complementary Junit test coverage
Change-Id: I5eec76918c63d1fa248a9fc353f8dc02ae925364 Issue-ID: CCSDK-1187 Signed-off-by: Steve Siani <alphonse.steve.siani.djissitchi@ibm.com>
Diffstat (limited to 'ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap')
-rw-r--r--ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/BlueprintProcessorCatalogServiceImplTest.kt61
-rw-r--r--ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/mock/MockBlueprintProcessorCatalogServiceImpl.kt29
2 files changed, 89 insertions, 1 deletions
diff --git a/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/BlueprintProcessorCatalogServiceImplTest.kt b/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/BlueprintProcessorCatalogServiceImplTest.kt
index 2fda15906..e40efd0c4 100644
--- a/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/BlueprintProcessorCatalogServiceImplTest.kt
+++ b/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/BlueprintProcessorCatalogServiceImplTest.kt
@@ -1,6 +1,8 @@
/*
* Copyright (C) 2019 Bell Canada.
*
+ * Copyright (C) 2019 IBM, 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
@@ -21,11 +23,18 @@ import org.junit.runner.RunWith
import org.onap.ccsdk.cds.controllerblueprints.core.deleteDir
import org.onap.ccsdk.cds.controllerblueprints.core.interfaces.BluePrintCatalogService
import org.onap.ccsdk.cds.controllerblueprints.core.normalizedFile
+import org.onap.ccsdk.cds.blueprintsprocessor.core.BluePrintCoreConfiguration
+import org.onap.ccsdk.cds.blueprintsprocessor.db.mock.MockBlueprintProcessorCatalogServiceImpl
+import org.onap.ccsdk.cds.controllerblueprints.core.BluePrintConstants
+import org.onap.ccsdk.cds.controllerblueprints.core.service.BluePrintRuntimeService
+import org.onap.ccsdk.cds.controllerblueprints.core.utils.BluePrintMetadataUtils
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.boot.autoconfigure.EnableAutoConfiguration
import org.springframework.context.annotation.ComponentScan
+import org.springframework.test.context.ContextConfiguration
import org.springframework.test.context.TestPropertySource
import org.springframework.test.context.junit4.SpringRunner
+import java.io.File
import kotlin.test.AfterTest
import kotlin.test.BeforeTest
import kotlin.test.assertTrue
@@ -33,15 +42,29 @@ import kotlin.test.assertTrue
@RunWith(SpringRunner::class)
@EnableAutoConfiguration
@ComponentScan(basePackages = ["org.onap.ccsdk.cds.blueprintsprocessor", "org.onap.ccsdk.cds.controllerblueprints"])
+@ContextConfiguration(classes = [BlueprintProcessorCatalogServiceImpl::class, BluePrintCoreConfiguration::class,
+ MockBlueprintProcessorCatalogServiceImpl::class])
@TestPropertySource(locations = ["classpath:application-test.properties"])
class BlueprintProcessorCatalogServiceImplTest {
@Autowired
lateinit var blueprintCatalog: BluePrintCatalogService
+ @Autowired
+ lateinit var blueprintProcessorCatalogServiceImpl: BlueprintProcessorCatalogServiceImpl
+
+ @Autowired
+ lateinit var blueprintCoreConfiguration: BluePrintCoreConfiguration
+
+ private lateinit var bluePrintRuntimeService: BluePrintRuntimeService<*>
+
+ private val blueprintId = "1234"
+
@BeforeTest
fun setup() {
deleteDir("target", "blueprints")
+ bluePrintRuntimeService = BluePrintMetadataUtils.getBluePrintRuntime(blueprintId,
+ "./../../../../../components/model-catalog/blueprint-model/test-blueprint/baseconfiguration")
}
@AfterTest
@@ -51,6 +74,7 @@ class BlueprintProcessorCatalogServiceImplTest {
@Test
fun `test catalog service`() {
+ //TODO: I thing this test function should be remve and replace by the other one.
runBlocking {
//FIXME("Create ZIP from test blueprints")
@@ -58,11 +82,46 @@ class BlueprintProcessorCatalogServiceImplTest {
assertTrue(file.exists(), "couldn't get file ${file.absolutePath}")
blueprintCatalog.saveToDatabase("1234", file)
-
blueprintCatalog.getFromDatabase("baseconfiguration", "1.0.0")
blueprintCatalog.deleteFromDatabase("baseconfiguration", "1.0.0")
+ }
+ }
+
+ @Test
+ fun `test save function`() {
+ runBlocking {
+ val file = normalizedFile("./src/test/resources/test-cba.zip")
+ assertTrue(file.exists(), "couldnt get file ${file.absolutePath}")
+ val metadata = bluePrintRuntimeService.bluePrintContext().metadata!!
+ metadata[BluePrintConstants.PROPERTY_BLUEPRINT_PROCESS_ID] = blueprintId
+ blueprintProcessorCatalogServiceImpl.save(metadata, file)
+ }
+ }
+
+ @Test
+ fun `test get function`() {
+ runBlocking {
+ val file = normalizedFile("./src/test/resources/test-cba.zip")
+ assertTrue(file.exists(), "couldnt get file ${file.absolutePath}")
+ val metadata = bluePrintRuntimeService.bluePrintContext().metadata!!
+ metadata[BluePrintConstants.PROPERTY_BLUEPRINT_PROCESS_ID] = blueprintId
+
+ blueprintProcessorCatalogServiceImpl.save(metadata, file)
+ blueprintProcessorCatalogServiceImpl.get("baseconfiguration", "1.0.0", true)
+ }
+
+ assertTrue(File(blueprintCoreConfiguration.bluePrintPathConfiguration().blueprintArchivePath +
+ "/baseconfiguration").deleteRecursively(),"Couldn't get blueprint archive " +
+ "${blueprintCoreConfiguration.bluePrintPathConfiguration().blueprintArchivePath}/baseconfiguration " +
+ "from data base.")
+ }
+
+ @Test
+ fun `test delete function`() {
+ runBlocking {
+ blueprintProcessorCatalogServiceImpl.delete("baseconfiguration", "1.0.0")
}
}
} \ No newline at end of file
diff --git a/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/mock/MockBlueprintProcessorCatalogServiceImpl.kt b/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/mock/MockBlueprintProcessorCatalogServiceImpl.kt
new file mode 100644
index 000000000..08de33270
--- /dev/null
+++ b/ms/blueprintsprocessor/modules/commons/db-lib/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/db/mock/MockBlueprintProcessorCatalogServiceImpl.kt
@@ -0,0 +1,29 @@
+/*
+ * Copyright © 2019 IBM, 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.
+ */
+package org.onap.ccsdk.cds.blueprintsprocessor.db.mock
+
+import io.mockk.mockk
+import org.onap.ccsdk.cds.controllerblueprints.core.interfaces.BluePrintValidatorService
+import org.springframework.context.annotation.Bean
+import org.springframework.context.annotation.Configuration
+@Configuration
+open class MockBlueprintProcessorCatalogServiceImpl {
+
+ @Bean(name = ["blueprintProcessorCatalogServiceImpl"])
+ open fun createBlueprintProcessorCatalogServiceImpl(): BluePrintValidatorService {
+ return mockk<BluePrintValidatorService>()
+ }
+} \ No newline at end of file