1 # ============LICENSE_START=======================================================
2 # csit-dcaegen2-collectors-hv-ves
3 # ================================================================================
4 # Copyright (C) 2018-2021 NOKIA
5 # Modification copyright (C) 2021 Samsung Electronics Co., Ltd.
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
11 # http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
21 Library DcaeAppSimulatorLibrary
22 Library XnfSimulatorLibrary
23 Library VesHvContainersUtilsLibrary
26 Resource resources/common-keywords.robot
28 Suite Setup Message Routing Suite Setup
29 Suite Teardown VES-HV Collector Suite Teardown
30 Test Teardown VES-HV Collector Test Shutdown
33 Message Routing Suite Setup
34 Log Started Suite: VES-HV Message Routing
35 Configure Single xNF Simulator
36 Log Suite setup finished
39 Correct Messages Routing
40 [Documentation] VES-HV Collector should route all valid messages to topics specified in configuration
41 ... without changing message payload generated in xNF simulator
43 Send Messages From xNF Simulators ${XNF_SIMULATOR} ${XNF_FIXED_PAYLOAD_REQUEST}
45 Wait until keyword succeeds 60 sec 5 sec
46 ... Assert Dcae App Consumed ${DEFAULT_PERF3GPP_TOPIC} ${AMOUNT_25000}
47 Assert Dcae App Consumed Proper Messages ${DEFAULT_PERF3GPP_TOPIC} ${DCAE_FIXED_PAYLOAD_REQUEST}
49 Correct StndDefined Messages Routing
50 [Documentation] VES-HV Collector should route all valid messages to stndDefined topics specified in configuration
51 ... without changing message payload generated in xNF simulator
53 Send Messages From xNF Simulators ${XNF_SIMULATOR} ${XNF_STNDDEFINED_PAYLOAD_REQUEST}
55 Wait until keyword succeeds 60 sec 5 sec
56 ... Assert Dcae App Consumed ${DEFAULT_STNDDEFINED_3GPP_HEARTBEAT_TOPIC} ${AMOUNT_25000}
57 Assert Dcae App Consumed Proper Messages ${DEFAULT_STNDDEFINED_3GPP_HEARTBEAT_TOPIC} ${DCAE_STNDDEFINED_PAYLOAD_REQUEST}
59 Too big payload message handling
60 [Documentation] VES-HV Collector should interrupt the stream when a message with too big payload is encountered
62 Send Messages From xNF Simulators ${XNF_SIMULATOR} ${XNF_TOO_BIG_PAYLOAD_REQUEST}
64 Wait until keyword succeeds 60 sec 5 sec
65 ... Assert Dcae App Consumed ${DEFAULT_PERF3GPP_TOPIC} ${AMOUNT_25000}
66 Assert Dcae App Consumed Proper Messages ${DEFAULT_PERF3GPP_TOPIC} ${DCAE_TOO_BIG_PAYLOAD_REQUEST}
69 Invalid wire frame message handling
70 [Documentation] VES-HV Collector should skip messages with invalid wire frame
72 Send Messages From xNF Simulators ${XNF_SIMULATOR} ${XNF_INVALID_WIRE_FRAME_REQUEST}
74 Wait until keyword succeeds 60 sec 5 sec
75 ... Assert Dcae App Consumed ${DEFAULT_PERF3GPP_TOPIC} ${AMOUNT_50000}
76 Assert Dcae App Consumed Proper Messages ${DEFAULT_PERF3GPP_TOPIC} ${DCAE_INVALID_WIRE_FRAME_REQUEST}
79 Invalid GPB data message handling
80 [Documentation] VES-HV Collector should skip messages with invalid GPB data
82 Send Messages From xNF Simulators ${XNF_SIMULATOR} ${XNF_INVALID_GPB_DATA_REQUEST}
84 Wait until keyword succeeds 60 sec 5 sec
85 ... Assert Dcae App Consumed ${DEFAULT_PERF3GPP_TOPIC} ${AMOUNT_50000}
86 Assert Dcae App Consumed Proper Messages ${DEFAULT_PERF3GPP_TOPIC} ${DCAE_INVALID_GPB_DATA_REQUEST}
89 Unsupported domain message handling
90 [Documentation] VES-HV Collector should skip messages with unsupported domain
92 Send Messages From xNF Simulators ${XNF_SIMULATOR} ${XNF_UNSUPPORTED_DOMAIN_REQUEST}
94 Wait until keyword succeeds 60 sec 5 sec
95 ... Assert Dcae App Consumed ${DEFAULT_PERF3GPP_TOPIC} ${AMOUNT_50000}
96 Assert Dcae App Consumed Proper Messages ${DEFAULT_PERF3GPP_TOPIC} ${DCAE_UNSUPPORTED_DOMAIN_REQUEST}
98 Unsupported stndDefinedNamespace message handling
99 [Documentation] VES-HV Collector should skip messages with unsupported domain
101 Send Messages From xNF Simulators ${XNF_SIMULATOR} ${XNF_UNSUPPORTED_NAMESPACE_REQUEST}
103 Wait until keyword succeeds 60 sec 5 sec
104 ... Assert Dcae App Consumed ${DEFAULT_STNDDEFINED_3GPP_HEARTBEAT_TOPIC} ${AMOUNT_50000}
105 Assert Dcae App Consumed Proper Messages ${DEFAULT_STNDDEFINED_3GPP_HEARTBEAT_TOPIC} ${DCAE_UNSUPPORTED_NAMESPACE_REQUEST}
108 ${HTTP_METHOD_URL} http://
110 ${XNF_SIM_API_PATH} /simulator/async
112 ${HV_VES_SCENARIOS} %{WORKSPACE}/tests/dcaegen2-collectors-hv-ves/testcases/resources/scenarios
113 ${XNF_FIXED_PAYLOAD_REQUEST} ${HV_VES_SCENARIOS}/fixed-payload/xnf-fixed-payload-request.json
114 ${XNF_STNDDEFINED_PAYLOAD_REQUEST} ${HV_VES_SCENARIOS}/stnd-defined/valid/xnf-stnd-defined-payload-request.json
115 ${XNF_TOO_BIG_PAYLOAD_REQUEST} ${HV_VES_SCENARIOS}/too-big-payload/xnf-too-big-payload-request.json
116 ${XNF_INVALID_WIRE_FRAME_REQUEST} ${HV_VES_SCENARIOS}/invalid-wire-frame/xnf-invalid-wire-frame-request.json
117 ${XNF_INVALID_GPB_DATA_REQUEST} ${HV_VES_SCENARIOS}/invalid-gpb-data/xnf-invalid-gpb-data-request.json
118 ${XNF_UNSUPPORTED_DOMAIN_REQUEST} ${HV_VES_SCENARIOS}/unsupported-domain/xnf-unsupported-domain-request.json
119 ${XNF_UNSUPPORTED_NAMESPACE_REQUEST} ${HV_VES_SCENARIOS}/stnd-defined/unsupported-namespace/xnf-unsupported-namespace-request.json
121 ${DCAE_FIXED_PAYLOAD_REQUEST} ${HV_VES_SCENARIOS}/fixed-payload/dcae-fixed-payload-request.json
122 ${DCAE_STNDDEFINED_PAYLOAD_REQUEST} ${HV_VES_SCENARIOS}/stnd-defined/valid/dcae-stnd-defined-payload-request.json
123 ${DCAE_TOO_BIG_PAYLOAD_REQUEST} ${HV_VES_SCENARIOS}/too-big-payload/dcae-too-big-payload-request.json
124 ${DCAE_INVALID_WIRE_FRAME_REQUEST} ${HV_VES_SCENARIOS}/invalid-wire-frame/dcae-invalid-wire-frame-request.json
125 ${DCAE_INVALID_GPB_DATA_REQUEST} ${HV_VES_SCENARIOS}/invalid-gpb-data/dcae-invalid-gpb-data-request.json
126 ${DCAE_UNSUPPORTED_DOMAIN_REQUEST} ${HV_VES_SCENARIOS}/unsupported-domain/dcae-unsupported-domain-request.json
127 ${DCAE_UNSUPPORTED_NAMESPACE_REQUEST} ${HV_VES_SCENARIOS}/stnd-defined/unsupported-namespace/dcae-unsupported-namespace-request.json
129 ${AMOUNT_25000} 25000
130 ${AMOUNT_50000} 50000