Add remote python executor DSL properties
[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("test-nodetemplate",
35                 "test nodetemplate") {
36             operation("test operation") {
37                 inputs {
38                     endpointSelector("remote-container")
39                     command("python sample.py")
40                     dynamicProperties("""{
41                         "prop1" : "1234",
42                         "prop2" : true,
43                         "prop3" : 23
44                     }""".trimIndent())
45                     argumentProperties("""["one", "two"]""")
46                     packages {
47                         type("pip")
48                         packages(arrayListOf("ncclient", "lxml"))
49                     }
50                 }
51             }
52         }
53         //println(nodeTemplate.asJsonString(true))
54         assertNotNull(nodeTemplate, "failed to generate nodeTemplateComponentRemotePythonExecutor")
55     }
56 }