Merge "Adapted function test for E release"
[nonrtric.git] / test / auto-test / FTC310.sh
1 #!/bin/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
21 TC_ONELINE_DESCR="Resync of RIC via changes in the consul config or pushed config"
22
23 #App names to include in the test when running docker, space separated list
24 DOCKER_INCLUDED_IMAGES="CBS CONSUL CP CR MR PA RICSIM NGW"
25
26 #Supported test environment profiles
27 SUPPORTED_PROFILES="ONAP-GUILIN ONAP-HONOLULU ONAP-ISTANBUL ORAN-CHERRY ORAN-D-RELEASE ORAN-E-RELEASE"
28 #Supported run modes
29 SUPPORTED_RUNMODES="DOCKER"
30
31 . ../common/testcase_common.sh  $@
32 . ../common/agent_api_functions.sh
33 . ../common/ricsimulator_api_functions.sh
34 . ../common/cr_api_functions.sh
35 . ../common/mr_api_functions.sh
36 . ../common/control_panel_api_functions.sh
37 . ../common/controller_api_functions.sh
38 . ../common/consul_cbs_functions.sh
39 . ../common/gateway_api_functions.sh
40
41 setup_testenvironment
42
43 #### TEST BEGIN ####
44
45 if [ "$PMS_VERSION" == "V2" ]; then
46     TESTED_VARIANTS="CONSUL NOCONSUL"
47 else
48     TESTED_VARIANTS="CONSUL"
49 fi
50
51 for consul_conf in $TESTED_VARIANTS ; do
52     generate_policy_uuid
53
54     # Clean container and start all needed containers #
55     clean_environment
56
57     start_policy_agent NOPROXY $SIM_GROUP/$POLICY_AGENT_COMPOSE_DIR/$POLICY_AGENT_CONFIG_FILE
58
59     set_agent_trace
60
61     # Create service to be able to receive events when rics becomes available
62     # Must use rest towards the agent since dmaap is not configured yet
63     api_put_service 201 "ric-registration" 0 "$CR_SERVICE_PATH/ric-registration"
64
65     # Start one RIC of each type
66     start_ric_simulators ricsim_g1 1  OSC_2.1.0
67     start_ric_simulators ricsim_g2 1  STD_1.1.3
68     if [ "$PMS_VERSION" == "V2" ]; then
69         start_ric_simulators ricsim_g3 1  STD_2.0.0
70     fi
71
72     start_mr
73
74     start_cr
75
76     start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/$CONTROL_PANEL_CONFIG_FILE
77
78     if [ $consul_conf == "CONSUL" ]; then
79         start_consul_cbs
80     fi
81
82     prepare_consul_config      NOSDNC  ".consul_config.json"
83
84     if [ "$PMS_VERSION" == "V2" ] && [ $consul_conf == "NOCONSUL" ]; then
85         api_put_configuration 200 ".consul_config.json"
86         api_get_configuration 200 ".consul_config.json"
87     else
88         consul_config_app                  ".consul_config.json"
89     fi
90
91     if [ "$PMS_VERSION" == "V2" ]; then
92         api_equal json:rics 3 300
93
94         cr_equal received_callbacks 3 120
95
96         cr_api_check_all_sync_events 200 ric-registration ricsim_g1_1 ricsim_g2_1 ricsim_g3_1
97     else
98         api_equal json:rics 2 300
99     fi
100
101     # Add an STD RIC and check
102     start_ric_simulators ricsim_g2 2  STD_1.1.3
103
104     prepare_consul_config      NOSDNC  ".consul_config.json"
105     if [ "$PMS_VERSION" == "V2" ] && [ $consul_conf == "NOCONSUL" ]; then
106         api_put_configuration 200 ".consul_config.json"
107         api_get_configuration 200 ".consul_config.json"
108     else
109         consul_config_app                  ".consul_config.json"
110     fi
111
112     if [ "$PMS_VERSION" == "V2" ]; then
113         api_equal json:rics 4 120
114
115         cr_equal received_callbacks 4 120
116
117         cr_api_check_all_sync_events 200 ric-registration ricsim_g2_2
118     else
119         api_equal json:rics 3 120
120     fi
121
122     check_policy_agent_logs
123
124
125     # Remove one RIC RIC and check
126     start_ric_simulators ricsim_g2 1  STD_1.1.3
127
128     prepare_consul_config      NOSDNC  ".consul_config.json"
129     if [ "$PMS_VERSION" == "V2" ] && [ $consul_conf == "NOCONSUL" ]; then
130         api_put_configuration 200 ".consul_config.json"
131         api_get_configuration 200 ".consul_config.json"
132     else
133         consul_config_app                  ".consul_config.json"
134     fi
135
136     if [ "$PMS_VERSION" == "V2" ]; then
137         api_equal json:rics 3 120
138
139         cr_equal received_callbacks 4 120
140     else
141         api_equal json:rics 2 120
142     fi
143
144     if [ "$PMS_VERSION" == "V2" ] && [ $consul_conf == "NOCONSUL" ]; then
145         api_get_configuration 200 ".consul_config.json"
146     fi
147
148     check_policy_agent_logs
149     check_sdnc_logs
150
151     store_logs          END_$consul_conf
152 done
153
154
155 #### TEST COMPLETE ####
156
157
158 print_result
159
160 auto_clean_environment