Initial commit for appc-flow-controller bundle
[appc.git] / appc-config / appc-flow-controller / provider / src / test / java / org / openecomp / appc / flow / executor / node / TestFlowExecutorNode.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP : APP-C
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.appc.flow.executor.node;
22
23 import java.io.InputStream;
24 import java.util.Enumeration;
25 import java.util.HashMap;
26 import java.util.Properties;
27
28 import org.junit.Before;
29 import org.junit.Test;
30 import org.openecomp.appc.flow.controller.node.FlowControlNode;
31 import org.openecomp.appc.flow.controller.utils.FlowControllerConstants;
32 import org.openecomp.sdnc.sli.SvcLogicContext;
33 import org.slf4j.Logger;
34 import org.slf4j.LoggerFactory;
35
36 public class TestFlowExecutorNode {
37     
38     private final Logger logger = LoggerFactory.getLogger(TestFlowExecutorNode.class);
39     
40             
41     //@Before
42             public void setUp() {
43                 Properties props = new Properties();
44                 InputStream propStr = getClass().getResourceAsStream("/svclogic.properties");
45                 if (propStr == null) {
46                     System.err.println("src/test/resources/svclogic.properties missing");
47                 }
48                 try {
49                     System.out.println("Got Properties");
50                     props.load(propStr);
51                     propStr.close();
52                 } catch (Exception e) {
53                     e.printStackTrace();
54                     System.err.println("Could not initialize properties");
55                 }
56                 // Add properties to global properties
57
58                 Enumeration propNames = props.keys();
59
60                 while (propNames.hasMoreElements()) {
61                     
62                     String propName = (String) propNames.nextElement();
63                     System.setProperty(propName, props.getProperty(propName));
64                     System.out.println("propName" + propName + " Value: " + props.getProperty(propName));
65                 }
66
67                 
68             }
69     
70     
71     //@Test
72     public void testFlowExecutorNode() throws Exception {
73         
74         SvcLogicContext ctx = new SvcLogicContext();
75         ctx.setAttribute(FlowControllerConstants.VNF_TYPE, "vUSP - vDBE-IPX HUB");
76         ctx.setAttribute(FlowControllerConstants.REQUEST_ACTION, "Configure");
77         ctx.setAttribute(FlowControllerConstants.VNFC_TYPE, "");;
78         ctx.setAttribute(FlowControllerConstants.REQUEST_ID,"TESTCOMMONFRMWK");
79         ;
80     //    ctx.setAttribute(FlowControllerConstants.ACTION_LEVEL,"VNF");
81         HashMap inParams = new HashMap();
82
83         FlowControlNode fen = new FlowControlNode();
84         fen.processFlow(inParams, ctx);
85                 
86         System.out.println("Flow sequence" + ctx.getAttribute("transMap"));
87         
88     }
89 }