Blueprint Processor Python Script Components
[ccsdk/cds.git] / components / core / src / test / kotlin / org / onap / ccsdk / apps / controllerblueprints / core / utils / BluePrintFileUtilsTest.kt
1 /*
2  * Copyright © 2017-2018 AT&T Intellectual Property.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package org.onap.ccsdk.apps.controllerblueprints.core.utils
18
19 import kotlinx.coroutines.runBlocking
20 import org.junit.Test
21 import java.io.File
22 import java.nio.file.Paths
23 import kotlin.test.assertTrue
24
25
26 class BluePrintFileUtilsTest {
27
28     @Test
29     fun testNewBlueprint() = runBlocking {
30         val targetPath: String = Paths.get("target").toUri().toURL().path.plus("/bp-new-test")
31         BluePrintFileUtils.createEmptyBluePrint(targetPath)
32
33     }
34
35     @Test
36     fun testBlueprintCopy() = runBlocking {
37         val sourcePath: String = "./../model-catalog/blueprint-model/starter-blueprint/baseconfiguration"
38
39         val targetPath: String = Paths.get("target").toUri().toURL().path.plus("/bp-copy-test")
40
41         val targetDir = File(targetPath)
42         targetDir.deleteOnExit()
43         // Copy the BP file
44         BluePrintFileUtils.copyBluePrint(sourcePath, targetDir.absolutePath)
45
46         assertTrue(targetDir.exists(), "faield to copy blueprint to ${targetDir.absolutePath}")
47
48         // Delete Type Files
49         BluePrintFileUtils.deleteBluePrintTypes(targetDir.absolutePath)
50
51         // Generate the Type Files
52         val bluePrintContext = BluePrintMetadataUtils.getBluePrintContext(sourcePath)
53         bluePrintContext.rootPath = targetDir.absolutePath
54
55         BluePrintFileUtils.writeBluePrintTypes(bluePrintContext)
56
57
58     }
59 }