Files
wlan-testing/libs/controller
Haricharan Jaka 79a84d4f6d Wifi 8048 (#572)
* Changed response to json

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

* Changed response to json for test_firmware_upgrade_status_gateway and test_access_points_connectivity functions in get_device_by_serial number

Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com>
2022-05-25 15:32:14 +05:30
..
2022-05-25 15:32:14 +05:30
2021-06-08 20:37:04 +05:30
2021-04-20 16:10:00 -04:00

Controller Library

###cloudsdk.py : This Library Consists of the following- 1. class ConfigureController : Base Configuration Class 2. class Controller(ConfigureController) : Main Cloudsdk Class 3. class ProfileUtility : Used to CRUD over CloudSDK Profiles Utility 4. class JFrogUtility : Used for Artifactory Utils, Get latest Build, Upload Firmware etc.

###Note: cloudsdk.py has libraries that uses Swagger Autogenerated Code.

Setup The Environment For using the cloudsdk library

Using Swagger Autogenerated CloudSDK Library pypi package (implemented with swagger codegen). Using [pytest] as the test execution framework. Using pylint for code quality monitoring. Using allure with Github Pages to report test outcome.

Follow the setps below to setup the environment for your development Environment

mkdir ~/.pip
echo "[global]" > ~/.pip/pip.conf
echo "index-url = https://pypi.org/simple" >> ~/.pip/pip.conf
echo "extra-index-url = https://tip-read:tip-read@tip.jfrog.io/artifactory/api/pypi/tip-wlan-python-pypi-local/simple" >> ~/.pip/pip.conf

after that do the following in this folder

pip3 install -r requirements.txt

Now your cloud sdk code is downloaded with all of the dependencies and you can start working on the solution

Docker

Alternatively you can use provided dockerfiles to develop\lint your code:

docker build -t wlan-cloud-test -f Dockerfile .
docker build -t wlan-cloud-lint -f Dockerfile-lint .

and then you can do something like this to lint your code:

docker run -it --rm -v %path_to_this_dir%/old_pytest wlan-tip-lint -d protected-access *py # for now
docker run -it --rm -v %path_to_this_dir%/old_pytest wlan-tip-lint *py # for future

to have a better output (sorted by line numbers) you can do something like this:

docker run -it --rm --entrypoint sh -v %path_to_this_dir%/old_pytest wlan-tip-lint -- -c 'pylint *py | sort -t ":" -k 2,2n'

and you can use something like this to develop your code:

docker run -it -v %path_to_this_dir%/old_pytest wlan-tip-test