Files
wlan-testing/tests/controller_tests/ucentral_gateway/test_gatewayservice.py
jitendracandela bd97a51bf7 Wifi 1321 create a lan forge pip module (#745)
* Added rate-limiting in both android_test and ios_test

* Removed ow_sanity_lf marker

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added ow_sanity_lf marker

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed ow_sanity_lf marker

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed ow_sanity_lf marker

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added ow_sanity_lf marker

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added missing methods

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Modified as per new framework

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added ow_sanity_lf marker for channel 11

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added rate-limiting test_cases

* added ow_sanity_lf marker to multipsk & multivlan tests

* Added allure_testcase-links for client_connect in validation_of_operating_modes(bridge,nat,vlan)

* Added ow_sanity_lf marker

* Removed unwanted  ow_sanity_lf marker

* allure suite and titles changed for mpsk & mvlan tests

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* Added rate_limiting test_cases with jira links in validation_of_operating_mode(bridge,nat,vlan)

* Added rate_radius_info and rate_radius_accounting_info

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Modified code for two test cases as per new infra

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Addded radius_auth_data radius_acc_data

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added radius_auth_data and radius_acc_data for rate limiting with radius test cases

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added basic-07

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Converted num station in int

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed unnecessary interop testbed details from lab_info

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Enterprise cleint connect and client connectivity tests in Android

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Enterprise cleint connect and client connectivity tests in iOS

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added new sanity marker for Interop testcases

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Enterprise mode client connect test cases in Interop

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added random string addition in Interop testcases for setup profiles ssids

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added random string addition in Interop testcases for setup profiles ssids

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* changed WAN upstream port for interop testbeds

* Added the logic for retest the ucentral connectivity if it is disconnected

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Added NAT-WAN

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* gw - get commands api fix

* Removed sanity marker on vlan testcases

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* FIxed issue in DFS

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed allure report name for Enterprise mode

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Pytest exit in case of error when testbed data is not available

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Fixed the string concat from previous commit

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Added check_connectivity fixture on every client_connectivity and dfs test  case

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Made some bug fixes on testcases

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed profile data in testcases to match setup params

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added new fix in manual pytest execution workflow as per master

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added new fix in sanity workflow as per master

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed ssid names in setup params of general test cases

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Enterprise mode library support for wifi connect

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed Interop sanity marker from test connectivity file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* commented newly added methods for test connectivity

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* commented traffic_generator_connectivity

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* changed as new infra

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed interop_uc_sanity

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed marker description

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added needed step for S20,S10 for forget ssid

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Fixed the ap libs command for ucentral restart

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Added test controller connectivity

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Changed markers as per pytest.ini

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Refractored dvlan

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added eth table and max station table in allure for test_traffic_generator_connectivity

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* changed scope of Interop testcase name fixture

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added the fix for rate limiting test with vlans. Added Access Point connectivity Tests

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Changed scope of get test lib fixture

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed markers

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added run-lf condition in check_connectivity

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added test case in the library function of setup_perfecto mobile data

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed interop testcase name fixture

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added new fail msg for Interop tests for better debugging

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added fix for testcase name in setup perfecto data

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added check_connectivity

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added ow_sanity_lf marker

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Refractored DVLAN

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added lab_info.json back due to unexpected deletion

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added skip-all work with all test cases and removed the broken test cases

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Renoved the unwanted print for getting marker

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Provided vlan id in list

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added proper feature and parent suite

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* [WIFI-11228] Add: manual workflow step with details on namespace (#727)

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* fixed incorrect security parameter in MVLAN test functions

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* Added Comments on the Library Functions for Proper Understanding

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added 6G RADIO Config data

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Removed the sync_repos.bash as it is not needed now

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Added proper suite, subsuite, parent suite, feature, title

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed method name  wifi_capacity to rate_limiting_test

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Refactored dvlan in wpa3_eap

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* old mvlan test files removed

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* marker name corrections in SDK API tests

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* descritpion and marker changes in mvlan tests

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* Added suite,sub_suite,parent,feature for IN,RU,SG

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Modified as per new freamework and enhanced allure and changed file name to dynamic qos

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed country from CA to US

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added 6g in get_applied_ssid_info method

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed manager ip to localhost

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added FMS Tests

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* added basic-08 & advance-01 info for tunneling

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* Added improvements around pass and fail for ap connectivity and added basic lab_info format

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Added proper feature, parent suite, suite, sub_suite and title

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added Toggle-Wifi Button Functionality for both android and ios tests file

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* Added toggle_wifi_mode test-cases for bridge,nat,vlan modes

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* Added fix for 2.4g based bssid band data

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* rempved rate_limiting_tests marker

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Refractored channel vs country code

* Corrected setup_basic_configuration

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added reports dir creation logic

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* vlan id's passed to test functions in mvlan

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* removed security_key from open test case

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Fixed scan ssid issue in vlan

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Fixed scan ssid issue and wrong security issue

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* changed vlan id for test_disable_vlan_wpa2_2g test case

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed dataplane_throughput_test marker to dataplane_tests

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed password for controller

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* updated controller credentials in lab-info & tunnel_bash

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* Fixed TypeError: can only concatenate str (not dict) to str issue

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed parent_suite from OpenWifi Dynamic Vlan Test to Dynamic Vlan Test

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Fix: resolved Pixel 4 scroll down issue, by modifying scrollDown() in android_libs.py

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* reverted old password in controller info

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* IP validation  issue in DVLAN

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Removed traffic_generator_connectivity test case and Modification for allure enhancement

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed parent suite and suite

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Renamed dynamic_qos_tests to rate_limiting_with_radius_tests

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed parent suite to Throughput Benchmark Test

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added missing key_mgmt for wp3

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* key_mgmt issue in DVLAN-wpa3e

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added security markers

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* [WIFI-11619] Upd: Docker instructions update (#739)

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* DVLAN admin_up issue

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added pk_passwd and num_stations

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added num_stations

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added num_stations, execution_number and In tls added pk_passwd argument

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added max stations

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added client_scale_tests

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added 6GHz test cases

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added new test channels

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added execution_number in parametrize

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* added new marker for general security mode testcases in Interop

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed one ssid with internet variable logic for Interop android

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added proper feature, parent_suite, suite, sub_suite, title in allure report for client_scale_test and dataplane_throughput_test

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed the teardown logic in android tests

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added global devicemodel in teardown function of Android

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added return statement for IP address

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added return statement for IP address

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed ip addr of rate limiting radius server to 10.28.3.100

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Changed ingress-rate to 10 and egress-rate to 5

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added pre-cleanup for deleting existing stations

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* [WIFI-11619] Fix: Docker example command

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* Changed RATE LIMITING RADIUS SERVER ip to 10.28.3.100

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added wpa personal and open bridge test cases for client scale test

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added Toggle Airplane Mode

* Added toggle airplane mode test-cases (NAT, VLAN)

Signed-off-by: karthikeyan <karthikeyan.thirumurthy@candelatech.com>

* Added toggle airplane mode functionality in perfecto library

Signed-off-by: karthikeyan <karthikeyan.thirumurthy@candelatech.com>

* Changed teardown func placement in android tests to accomodate perfecto report

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Refactored client-isolation test-cases

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* refactored multi-station performance test-cases

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* Added logic to setup_configuration_data() to support for multi-band combinations

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* allure attachments for client-isolation test_cases

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* [WIFI-11619] Fix: workflow dependencies

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Dbg: runtime user

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Chg: set files permissions

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Dbg: add step for status

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* Adjusted parameters in rate limiting for perfecto interop

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* [WIFI-11619] Add: git commit the changes

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Add: git commit the changes

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Add: git commit the changes

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Add: git commit the changes

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Add: git commit the changes

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Chg: GitHub Pages dir

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* [WIFI-11619] Chg: GitHub Pages dir

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* Added extra parameters in rate limiting test to accomodate lanforge testcases in Perfecto Interop

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* [WIFI-11619] Add: README note

Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>

* Rectified ssid parameter in Perfecto Interop

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed ssid to ssid_name in Interop rate limiting testcases

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed execution number logic (NAT-LAN logic) for NAT mode ttls test cases

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Refactored multi-asso-disasso

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Revert "Added logic to setup_configuration_data() to support for multi-band combinations"

This reverts commit cef8a23315.

* Added try and except logic in push_config

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Fixed Config sent from Gateway is Received by AP, But not Applied by AP issue and added AP logs during config fails

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed resp is None logic

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added Interop sanity marker in connectivity tests

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Updated nat mode & create_vlan parameter for Multi Station Performance test-cases

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* Added title, suite for multi-asso-disasso

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added table results for multi-station-performance test-cases

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* Updated Readme file in wlan-testing

Signed-off-by: shivam <shivam.thakur@candelatech.com>

* Added check_connectivity arg

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Added title,suite for VLAN-multi-asso-disasso

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Refactored rx_sens from rx_sensitivity test to TR-398 Issue 2

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Resolved conflicts in Lab_info.json

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Open Passpoint required data in Configuration.py

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Open roaming configuration Fixture

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Open Roaming support code in Controller libs and tip_2x

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added sample testcase of open roaming for checking

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Comments in Open roaming testcase

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Modified upload_rate for wifi_capacity

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* Removed unnecessary Passpoint data

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed unnecessary Passpoint data in configuration.py

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Adding new Jira links and Descriptions

Signed-off-by: Rajendra <rajendra.pappu@candelatech.com>

* added passpoint info to tunnel bash

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* created 5g tests for rxsens

Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>

* Modified multi station performance udp_download test-cases for test result table

Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>

* Deleted wifi_capacity_test

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added or removed performance marker for performance suite

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Enhanced allure report for sanity

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added sanity test plans and markers

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed unnecessary marker

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added Interop Testplan markers in testplan.md file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed emoji's from testplan file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added emoji's from testplan file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added some formatting in texts in testplan file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed some formatting in texts in testplan file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added some formatting in texts in testplan file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added jira links, description and markers for new sanity testcases

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* Added markers and description for some more of sanity suite testcases

Signed-off-by: Jyothsna-setti <jyothsna.polamarasetty@candelatech.com>

* Added test plans md file in readme.md file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Added test plans md file in readme.md file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Changed marker expressions in Testplans.md file

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>

* Removed wrong duplicate parent_suite

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Added test description

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed unwanted marker and Added test description

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Removed duplicate function name

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Modified parent suite

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* Modified parent suite and feature name

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

* modified mode of udaya AP from wifi6 to wifi5

Signed-off-by: anil-tegala <anil.tegala@candelatech.com>

* Logging response info for configuration push

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>

Signed-off-by: jitendracandela <jitendra.kushavah@candelatech.com>
Signed-off-by: anil-tegala <anil.tegala@candelatech.com>
Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Signed-off-by: shivam <shivam.thakur@candelatech.com>
Signed-off-by: karthikaeyetea <karthika.subramani@candelatech.com>
Signed-off-by: Dmitry Dunaev <dmitry@opsfleet.com>
Signed-off-by: tarun-candela <tarunkumar.madabathula@candelatech.com>
Signed-off-by: karthikeyan <karthikeyan.thirumurthy@candelatech.com>
Signed-off-by: Rajendra <rajendra.pappu@candelatech.com>
Signed-off-by: Jyothsna-setti <jyothsna.polamarasetty@candelatech.com>
Co-authored-by: tarun-candela <tarunkumar.madabathula@candelatech.com>
Co-authored-by: anil-tegala <anil.tegala@candelatech.com>
Co-authored-by: haricharan-jaka <haricharan.jaka@candelatech.com>
Co-authored-by: shivam <shivam.thakur@candelatech.com>
Co-authored-by: karthikaeyetea <karthika.subramani@candelatech.com>
Co-authored-by: Dmitry Dunaev <83591011+dunaev-opsfleet@users.noreply.github.com>
Co-authored-by: Dmitry Dunaev <dmitry@opsfleet.com>
Co-authored-by: karthikeyan <karthikeyan.thirumurthy@candelatech.com>
Co-authored-by: Rajendra <rajendra.pappu@candelatech.com>
Co-authored-by: Jyothsna-setti <jyothsna.polamarasetty@candelatech.com>
2022-12-12 17:04:47 +05:30

491 lines
20 KiB
Python

"""
UCentral Gateway Services Rest API Tests
"""
import json
import random
import allure
import pytest
@pytest.mark.uc_sanity
@pytest.mark.ow_sdk_tests
@pytest.mark.ow_sanity_lf
@pytest.mark.ow_sdk_load_tests
@pytest.mark.owgw_api_tests
@allure.parent_suite("SDK Tests")
@allure.suite("Gateway Service Tests")
class TestUcentralGatewayService(object):
"""
"""
configuration = {
"uuid": 1,
"radios": [
{
"band": "5G",
"country": "CA",
"channel-mode": "HE",
"channel-width": 80
}
],
"interfaces": [
{
"name": "WAN",
"role": "upstream",
"services": ["lldp"],
"ethernet": [
{
"select-ports": [
"WAN*"
]
}
],
"ipv4": {
"addressing": "dynamic"
},
"ssids": [
{
"name": "OpenWifi",
"wifi-bands": [
"5G"
],
"bss-mode": "ap",
"encryption": {
"proto": "psk2",
"key": "OpenWifi",
"ieee80211w": "optional"
}
}
]
},
{
"name": "LAN",
"role": "downstream",
"services": ["ssh", "lldp"],
"ethernet": [
{
"select-ports": [
"LAN*"
]
}
],
"ipv4": {
"addressing": "static",
"subnet": "192.168.1.1/24",
"dhcp": {
"lease-first": 10,
"lease-count": 100,
"lease-time": "6h"
}
},
"ssids": [
{
"name": "OpenWifi",
"wifi-bands": [
"5G"
],
"bss-mode": "ap",
"encryption": {
"proto": "psk2",
"key": "OpenWifi",
"ieee80211w": "optional"
}
}
]
}
],
"metrics": {
"statistics": {
"interval": 120,
"types": ["ssids", "lldp", "clients"]
},
"health": {
"interval": 120
}
},
"services": {
"lldp": {
"describe": "2.x",
"location": "universe"
},
"ssh": {
"port": 22
}
}
}
@allure.title("Get All Devices")
@allure.testcase(name="WIFI-11399",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11399")
@pytest.mark.get_all_devices
def test_gwservice_listdevices(self, get_target_object):
"""
Test the list of devices endpoint
Unique marker: pytest -m "get_all_devices"
"""
resp = get_target_object.controller_library_object.get_devices()
# print(resp.json())
# allure.attach(name="Devices", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_crud_dev
@allure.title("CRUD Device")
@allure.testcase(name="WIFI-11399",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11399")
@pytest.mark.CRUD
def test_gwservice_create_read_edit_delete_device(self, get_target_object, selected_testbed):
"""
Test to create,read,edit and delete device endpoint
Unique marker: pytest -m "CRUD"
"""
device_mac = "02:00:00:%02x:%02x:%02x" % (random.randint(0, 255),
random.randint(0, 255),
random.randint(0, 255))
device_name = device_mac.replace(":", "")
# device_name = "deadbeef0011" + testbed.replace("-","")
payload = {'serialNumber': device_name,
'UUID': '123456',
'configuration': self.configuration,
'deviceType': 'AP',
'location': '',
'macAddress': device_mac,
'manufacturer': 'Testing through Automation',
'owner': ''}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.add_device_to_gw(device_name, payload)
# allure.attach(name="response: ", body=str(resp.json()))
body = resp.url + "," + str(resp.status_code) + ',' + resp.text
# allure.attach(name="Gateway create device", body=body)
if resp.status_code != 200:
assert False
devices = json.loads(resp.text)
# print(devices)
resp = get_target_object.controller_library_object.get_device_by_serial_number(device_name)
body = resp.url + "," + str(resp.status_code) + ',' + resp.text
# allure.attach(name="Gateway create device-verify", body=body)
if resp.status_code != 200:
assert False
editing_payload = {
"id": device_name,
"notes": [
{
"note": "Testing through Automation"
}
]
}
# print(json.dumps(editing_payload))
resp = get_target_object.controller_library_object.edit_device_on_gw(device_name, editing_payload)
# allure.attach(name="response: ", body=str(resp.json()))
body = resp.url + "," + str(resp.status_code) + ',' + resp.text
# allure.attach(name="Gateway edited device", body=body)
if resp.status_code != 200:
assert False
devices = json.loads(resp.text)
# print(devices)
resp = get_target_object.controller_library_object.get_device_by_serial_number(device_name)
body = resp.url + "," + str(resp.status_code) + ',' + resp.text
# allure.attach(name="Gateway edited device-verify", body=body)
if resp.status_code != 200:
assert False
resp = get_target_object.controller_library_object.delete_device_from_gw(device_name)
body = resp.url + "," + str(resp.status_code) + ',' + resp.text
# allure.attach(name="gw created device-delete", body=body)
if resp.status_code != 200:
assert False
@pytest.mark.system_info_gw
@allure.title("System Info OW Gateway Service")
@allure.testcase(name="WIFI-11436",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11436")
@pytest.mark.OW_gateway_service
def test_system_info_gw(self, get_target_object):
"""
Test to verify OW gateway services
Unique marker: pytest -m "OW_gateway_service"
"""
system_info = get_target_object.controller_library_object.get_system_gw()
# print(system_info.json())
# allure.attach(name="system info", body=str(system_info.json()), #attachment_type=#allure.#attachment_type.JSON)
assert system_info.status_code == 200
@pytest.mark.gw_commands
@allure.title("Get OW Gateway Commands")
@allure.testcase(name="WIFI-11437",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11437")
def test_gw_commands(self, get_target_object, get_testbed_details):
"""
Test to verify OW gateway commands executed
Unique marker: pytest -m "gw_commands"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
resp = get_target_object.controller_library_object.get_commands(device_name)
# print(resp.json())
# allure.attach(name="Gateway list of commands", body=str(system_info.json()),
assert resp.status_code == 200
@pytest.mark.gw_device_logs
@allure.title("Get Device Logs")
@allure.testcase(name="WIFI-11438",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11438")
def test_gw_service_get_logs(self, get_target_object, get_testbed_details):
"""
Test the device logs present in Gateway UI
Unique marker:pytest -m "gw_device_logs"
"""
print("XXXXXXX", get_testbed_details)
device_name = get_testbed_details['device_under_tests'][0]['identifier']
resp = get_target_object.controller_library_object.get_device_logs(device_name)
# print(resp.json())
# allure.attach(name="Device Logs", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_device_health_checks
@allure.title("Get Health Checks")
@allure.testcase(name="WIFI-11439",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11439")
def test_gw_service_get_health_checks(self, get_target_object, get_testbed_details):
"""
Test the device health checks present in Gateway UI
Unique marker:pytest -m "gw_device_health_checks"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
resp = get_target_object.controller_library_object.get_device_health_checks(device_name)
# print(resp.json())
# allure.attach(name="Device Health checks", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_device_capabilities
@allure.title("Get Capabilities")
@allure.testcase(name="WIFI-11441",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11441")
def test_gw_service_get_capabilities(self, get_target_object, get_testbed_details):
"""
Test the device capabilities present in Gateway UI
Unique marker:pytest -m "gw_device_capabilities"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
resp = get_target_object.controller_library_object.get_device_capabilities(device_name)
# print(resp.json())
# allure.attach(name="Device capabilities", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_device_statistics
@allure.title("Get Statistics")
@allure.testcase(name="WIFI-11442",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11442")
def test_gw_service_get_statistics(self, get_target_object, get_testbed_details):
"""
Test the device statistics present in Gateway UI
Unique marker: pytest -m "gw_device_statistics"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
resp = get_target_object.controller_library_object.get_device_statistics(device_name)
# print(resp.json())
# allure.attach(name="Device statistics", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_device_status
@allure.title("Get Device Status")
@allure.testcase(name="WIFI-11443",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11443")
def test_gw_service_get_status(self, get_target_object, get_testbed_details):
"""
Test the device status present in Gateway UI
Unique marker: pytest -m "gw_device_status"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
resp = get_target_object.controller_library_object.get_device_status(device_name)
# print(resp.json())
# allure.attach(name="Device status", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_ping_device
@allure.title("Ping Device")
@allure.testcase(name="WIFI-11444",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11444")
def test_gw_service_ping_device(self, get_target_object, get_testbed_details):
"""
Test to Ping device present in Gateway UI
Unique marker:pytest -m "gw_ping_device"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
payload = {
"serialNumber": device_name
}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.ping_device(device_name, payload)
# print(resp.json())
# allure.attach(name="Device Ping status", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_led_blink_device
@allure.title("Blink LED API")
@allure.testcase(name="WIFI-11445",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11445")
def test_gw_service_led_blink_device(self, get_target_object, get_testbed_details):
"""
Test to Blink led on device present in Gateway UI
Unique marker: pytest -m "gw_led_blink_device"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
payload = {
"serialNumber": device_name,
"when": 0,
"duration": 1,
"pattern": "on"
}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.led_blink_device(device_name, payload)
# print(resp.json())
# allure.attach(name="Device Blink led status", body=str(resp.json()),
# attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_trace_device
@allure.title("Trace Command")
@allure.testcase(name="WIFI-11446",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11446")
def test_gw_service_trace_device(self, get_target_object, get_testbed_details):
"""
Test to trace device present in Gateway UI
Unique marker:pytest -m "gw_trace_device"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
payload = {
"serialNumber": device_name,
"when": 0,
"duration": 1,
"numberOfPackets": 0,
"network": "string",
"interface": "string"
}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.trace_device(device_name, payload)
# print(resp.json())
# allure.attach(name="Device trace status", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_wifi_scan_device
@allure.title("Wi-Fi Scan Device")
@allure.testcase(name="WIFI-11447",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11447")
def test_gw_service_wifi_scan_device(self, get_target_object, get_testbed_details):
"""
Test to Wi-Fi scan device present in Gateway UI
Unique marker:pytest -m "gw_wifi_scan_device"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
payload = {
"serialNumber": device_name,
"verbose": True,
"activeScan": True,
"selector": {
"bands": [
"2"
]
}
}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.wifi_scan_device(device_name, payload)
# print(resp.json())
# allure.attach(name="Device Wifi scan status", body=str(resp.json()),
# attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_request_msg_device
@allure.title("Request Message Device")
@allure.testcase(name="WIFI-11448",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11448")
def test_gw_service_request_msg_device(self, get_target_object, get_testbed_details):
"""
Test to Request specific msg from device present in Gateway UI
Unique marker:pytest -m "gw_request_msg_device"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
payload = {
"serialNumber": device_name,
"when": 0,
"message": "state"
}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.request_specific_msg_from_device(device_name, payload)
# print(resp.json())
# allure.attach(name="Device Request specific msg status", body=str(resp.json()),
# attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_event_queue_device
@allure.title("Get Event Queue of Device")
@allure.testcase(name="WIFI-11452",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11452")
def test_gw_service_event_queue_device(self, get_target_object, get_testbed_details):
"""
Test to Request Event Queue from device present in Gateway UI
Unique marker:pytest -m "gw_event_queue_device"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
payload = {
"serialNumber": device_name,
"types": [
"dhcp"
]
}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.event_queue(device_name, payload)
# print(resp.json())
# allure.attach(name="Device Request Event Queue status", body=str(resp.json()),
# attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_telemetry_device
@allure.title("Telemetry Device")
@allure.testcase(name="WIFI-11453",
url="https://telecominfraproject.atlassian.net/browse/WIFI-11453")
def test_gw_service_telemetry_device(self, get_target_object, get_testbed_details):
"""
Test to Request telemetry from device present in Gateway UI
Unique marker:pytest -m "gw_telemetry_device"
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
payload = {
"serialNumber": device_name,
"interval": 0,
"lifetime": 0,
"kafka": False,
"types": [
"dhcp-snooping"
],
"uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
# print(json.dumps(payload))
resp = get_target_object.controller_library_object.telemetry(device_name, payload)
# print(resp.json())
# allure.attach(name="Device telemetry status", body=str(resp.json()),
# attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200
@pytest.mark.gw_rtty
@pytest.mark.ow_sdk_load_tests
@pytest.mark.owgw_api_tests
@allure.title("RTTY API")
def test_gw_service_get_rtty(self, get_target_object, get_testbed_details):
"""
Test the device rtty parameters in Gateway UI
"""
device_name = get_testbed_details['device_under_tests'][0]['identifier']
resp = get_target_object.controller_library_object.get_rtty_params(device_name)
# print(resp.json())
# allure.attach(name="Device RTTY parameters", body=str(resp.json()), #attachment_type=#allure.#attachment_type.JSON)
assert resp.status_code == 200