mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-05-01 07:26:05 +00:00

Topogen (Topology Generator) is a helper that wraps around Topotest to simplify some of the boilerplate code. This abstraction will help the development of new tests and new APIs without breaking the existing ones. It also makes the relation of objects clearer, since we no longer touch the Mininet API directly, which in turn also makes us less vulnerable to external API changes.
27 lines
872 B
Python
27 lines
872 B
Python
"""
|
|
Topotest conftest.py file.
|
|
"""
|
|
|
|
from lib.topogen import get_topogen
|
|
import pytest
|
|
|
|
def pytest_addoption(parser):
|
|
"""
|
|
Add topology-only option to the topology tester. This option makes pytest
|
|
only run the setup_module() to setup the topology without running any tests.
|
|
"""
|
|
parser.addoption('--topology-only', action='store_true',
|
|
help='Only set up this topology, don\'t run tests')
|
|
|
|
def pytest_runtest_call():
|
|
"""
|
|
This function must be run after setup_module(), it does standarized post
|
|
setup routines. It is only being used for the 'topology-only' option.
|
|
"""
|
|
# pylint: disable=E1101
|
|
# Trust me, 'config' exists.
|
|
if pytest.config.getoption('--topology-only'):
|
|
# Allow user to play with the setup.
|
|
get_topogen().mininet_cli()
|
|
pytest.exit('the topology executed successfully')
|