Metadata-Version: 2.4
Name: boardfarm3_docsis
Version: 1.0.1
Summary: An add-on to boardfarm that contains DOCSIS specific libraries.
Author-email: Various <t&iconnectivityboardfarm@libertyglobal.com>
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Telecommunications Industry
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Embedded Systems
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Software Development :: Testing :: Acceptance
License-File: LICENSE
Requires-Dist: boardfarm3>=1.0.0
Requires-Dist: pandas
Requires-Dist: pexpect
Requires-Dist: termcolor
Requires-Dist: pytest-boardfarm3 ; extra == "demo-test"
Requires-Dist: darglint2==v1.8.2 ; extra == "dev"
Requires-Dist: flake8 ; extra == "dev"
Requires-Dist: flake8-bugbear ; extra == "dev"
Requires-Dist: flake8-builtins ; extra == "dev"
Requires-Dist: flake8-comprehensions ; extra == "dev"
Requires-Dist: flake8-docstrings ; extra == "dev"
Requires-Dist: flake8-rst ; extra == "dev"
Requires-Dist: flake8-rst-docstrings ; extra == "dev"
Requires-Dist: mypy ; extra == "dev"
Requires-Dist: nox ; extra == "dev"
Requires-Dist: pre-commit ; extra == "dev"
Requires-Dist: pylint ; extra == "dev"
Requires-Dist: ruff==v0.11.5 ; extra == "dev"
Requires-Dist: sphinx ; extra == "doc"
Requires-Dist: pytest ; extra == "test"
Requires-Dist: pytest-cov ; extra == "test"
Requires-Dist: pytest-mock ; extra == "test"
Requires-Dist: pytest-randomly ; extra == "test"
Project-URL: Source, https://github.com/lgirdk/boardfarm-docsis
Provides-Extra: demo-test
Provides-Extra: dev
Provides-Extra: doc
Provides-Extra: test

# Boardfarm DOCSIS

This is the repo  that will contain DOCSIS specific tests and libraries for use for testing a docsis CM, CMTS, or other devices in a typical DOCSIS environment

To use this boardfarm plugin on Ubuntu, you must install:

```sh
# TCL for encoding of an MTA config file
sudo apt update
sudo apt install tcllib

# docsis for running docsis commands
sudo apt install automake libtool libsnmp-dev bison make gcc flex git libglib2.0-dev libfl-dev
git clone https://github.com/rlaager/docsis.git
cd docsis
./autogen.sh
./configure
make
sudo make install
```

## Execute tests

Please see the the demo test suite that utilizes some of the use-cases
from the ```boardfarm-docsis``` plugin.

```bash
.
└── tests
    ├── __init__.py
    ├── docsis
    │   ├── __init__.py
    │   └── test_demo_docsis_1.py
    ├── pytest.ini
    └── tr069
        ├── __init__.py
        └── test_demo_tr069_1.py
```

**_NOTE:_**  In order to run these test you will have to install pytest-boardfarm.

```bash
pip install boardfarm3[docsis,pytest]
```

Sample run command:

```bash
pytest \
    --rootdir=. \
    --capture=tee-sys \
    --board-name <cpe-name> \
    --env-config <testbed_env.json>  \
    --junitxml ./results/pytest_run_report.xml \
    --ldap-credentials "username:password"  \
    --inventory-config <lab_devices.json> \
    --html=./results/pytest_run_report.html  \
    --self-contained-html  \
    --save-console-logs=./results  \
    ./boardfarm-docsis/tests/ \
    --skip-contingency-checks
```

