Renaming Files having BluePrint to have Blueprint
[ccsdk/cds.git] / ms / blueprintsprocessor / functions / python-executor / src / test / kotlin / org / onap / ccsdk / cds / blueprintsprocessor / functions / python / executor / ComponentRemotePythonExecutorDSLTest.kt
1 /*
2  *  Copyright © 2019 IBM.
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.cds.blueprintsprocessor.functions.python.executor
18
19 import org.junit.Test
20 import org.onap.ccsdk.cds.controllerblueprints.core.BlueprintTypes
21 import kotlin.test.assertNotNull
22
23 class ComponentRemotePythonExecutorDSLTest {
24
25     @Test
26     fun testNodeTypeComponentRemotePythonExecutor() {
27         val nodeType = BlueprintTypes.nodeTypeComponentRemotePythonExecutor()
28         // println(nodeType.asJsonString(true))
29         assertNotNull(nodeType, "failed to generate nodeTypeComponentRemotePythonExecutor")
30     }
31
32     @Test
33     fun testNodeTemplateComponentRemotePythonExecutor() {
34         val nodeTemplate = BlueprintTypes.nodeTemplateComponentRemotePythonExecutor(
35             "test-nodetemplate",
36             "test nodetemplate"
37         ) {
38             definedOperation("test operation") {
39                 inputs {
40                     endpointSelector("remote-container")
41                     command("python sample.py")
42                     dynamicProperties(
43                         """{
44                         "prop1" : "1234",
45                         "prop2" : true,
46                         "prop3" : 23
47                     }
48                         """.trimIndent()
49                     )
50                     argumentProperties("""["one", "two"]""")
51                     packages {
52                         type("pip")
53                         packages(arrayListOf("ncclient", "lxml"))
54                     }
55                 }
56             }
57         }
58         // println(nodeTemplate.asJsonString(true))
59         assertNotNull(nodeTemplate, "failed to generate nodeTemplateComponentRemotePythonExecutor")
60     }
61 }