Integrated PMS 2.0 to test env and test cases
[nonrtric.git] / test / auto-test / PM_DEMO.sh
1 #!/usr/bin/env bash
2
3 #  ============LICENSE_START===============================================
4 #  Copyright (C) 2020 Nordix Foundation. All rights reserved.
5 #  ========================================================================
6 #  Licensed under the Apache License, Version 2.0 (the "License");
7 #  you may not use this file except in compliance with the License.
8 #  You may obtain a copy of the License at
9 #
10 #       http://www.apache.org/licenses/LICENSE-2.0
11 #
12 #  Unless required by applicable law or agreed to in writing, software
13 #  distributed under the License is distributed on an "AS IS" BASIS,
14 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 #  See the License for the specific language governing permissions and
16 #  limitations under the License.
17 #  ============LICENSE_END=================================================
18 #
19
20 TC_ONELINE_DESCR="Preparation demo setup  - populating a number of ric simulators with types and instances"
21
22 #App names to include in the test, space separated list
23 INCLUDED_IMAGES="CBS CONSUL CP CR MR PA RICSIM SDNC"
24
25 . ../common/testcase_common.sh $@
26 . ../common/agent_api_functions.sh
27 . ../common/ricsimulator_api_functions.sh
28
29 #### TEST BEGIN ####
30
31 #Local vars in test script
32 ##########################
33 # Path to callback receiver
34 CR_PATH="http://$CR_APP_NAME:$CR_EXTERNAL_PORT/callbacks"
35
36 if [ "$PMS_VERSION" == "V2" ]; then
37     notificationurl="http://localhost:80"
38 else
39     notificationurl=""
40 fi
41
42 use_cr_http
43 use_agent_rest_http
44 use_sdnc_http
45 use_simulator_http
46
47 clean_containers
48
49 OSC_NUM_RICS=6
50 STD_NUM_RICS=5
51
52 start_ric_simulators  $RIC_SIM_PREFIX"_g1" $OSC_NUM_RICS OSC_2.1.0
53
54 start_ric_simulators  $RIC_SIM_PREFIX"_g2" $STD_NUM_RICS STD_1.1.3
55
56 start_mr #Just to prevent errors in the agent log...
57
58 start_control_panel
59
60 CR_PATH="https://$CR_APP_NAME:$CR_EXTERNAL_SECURE_PORT/callbacks"
61 use_cr_http
62
63 start_sdnc
64
65 start_consul_cbs
66
67 prepare_consul_config      SDNC  ".consul_config.json"
68 consul_config_app                  ".consul_config.json"
69
70 start_policy_agent
71
72 api_get_status 200
73
74 # Print the A1 version for OSC
75 for ((i=1; i<=$OSC_NUM_RICS; i++))
76 do
77     sim_print $RIC_SIM_PREFIX"_g1_"$i interface
78 done
79
80
81 # Print the A1 version for STD
82 for ((i=1; i<=$STD_NUM_RICS; i++))
83 do
84     sim_print $RIC_SIM_PREFIX"_g2_"$i interface
85 done
86
87
88 # Load the polictypes in osc
89 for ((i=1; i<=$OSC_NUM_RICS; i++))
90 do
91     sim_put_policy_type 201 $RIC_SIM_PREFIX"_g1_"$i 100 demo-testdata/OSC/sim_qos.json
92     sim_put_policy_type 201 $RIC_SIM_PREFIX"_g1_"$i 20008 demo-testdata/OSC/sim_tsa.json
93 done
94
95
96 #Check the number of schemas and the individual schemas in OSC
97 if [ "$PMS_VERSION" == "V2" ]; then
98     api_equal json:policy-types 3 120
99
100     for ((i=1; i<=$OSC_NUM_RICS; i++))
101     do
102         api_equal json:policy-types?ric_id=$RIC_SIM_PREFIX"_g1_"$i 2 120
103     done
104
105     # Check the schemas in OSC
106     for ((i=1; i<=$OSC_NUM_RICS; i++))
107     do
108         api_get_policy_type 200 100 demo-testdata/OSC/qos-agent-modified.json
109         api_get_policy_type 200 20008 demo-testdata/OSC/tsa-agent-modified.json
110     done
111 else
112     api_equal json:policy_types 3 120
113
114     for ((i=1; i<=$OSC_NUM_RICS; i++))
115     do
116         api_equal json:policy_types?ric=$RIC_SIM_PREFIX"_g1_"$i 2 120
117     done
118
119     # Check the schemas in OSC
120     for ((i=1; i<=$OSC_NUM_RICS; i++))
121     do
122         api_get_policy_schema 200 100 demo-testdata/OSC/qos-agent-modified.json
123         api_get_policy_schema 200 20008 demo-testdata/OSC/tsa-agent-modified.json
124     done
125 fi
126
127
128 # Create policies
129 use_agent_rest_http
130
131 api_put_service 201 "Emergency-response-app" 0 "$CR_PATH/1"
132
133 # Create policies in OSC
134 for ((i=1; i<=$OSC_NUM_RICS; i++))
135 do
136     generate_uuid
137     api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g1_"$i 100 $((3000+$i)) NOTRANSIENT $notificationurl demo-testdata/OSC/piqos_template.json 1
138     generate_uuid
139     api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g1_"$i 20008 $((4000+$i)) NOTRANSIENT $notificationurl demo-testdata/OSC/pitsa_template.json 1
140 done
141
142
143 # Check the number of policies in OSC
144 for ((i=1; i<=$OSC_NUM_RICS; i++))
145 do
146     sim_equal $RIC_SIM_PREFIX"_g1_"$i num_instances 2
147 done
148
149
150 # Create policies in STD
151 for ((i=1; i<=$STD_NUM_RICS; i++))
152 do
153     generate_uuid
154     api_put_policy 201 "Emergency-response-app" $RIC_SIM_PREFIX"_g2_"$i NOTYPE $((2100+$i)) NOTRANSIENT $notificationurl demo-testdata/STD/pi1_template.json 1
155 done
156
157
158 # Check the number of policies in STD
159 for ((i=1; i<=$STD_NUM_RICS; i++))
160 do
161     sim_equal $RIC_SIM_PREFIX"_g2_"$i num_instances 1
162 done
163
164 check_policy_agent_logs
165
166 #### TEST COMPLETE ####
167
168 store_logs          END
169
170 print_result