You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ngcpcfg/t
Guillem Jover 4e67890f1f
TT#81050 Fix precedence of HA_CONFIG and PAIR_CONFIG config.yml variants
5 years ago
..
fixtures TT#81050 Fix precedence of HA_CONFIG and PAIR_CONFIG config.yml variants 5 years ago
sources.list.d TT#21905 Fix c945aba: update building instruction (no need to rebuild image) 8 years ago
Dockerfile TT#71952 Parallelize templated output generation 5 years ago
README.adoc TT#71952 Parallelize templated output generation 5 years ago
conftest.py TT#17600 pytest: import fixtures as plugins instead of importing them 8 years ago
default-git-repository.tar.gz MT#16391 Initial tests using pytest 8 years ago
pytest.ini TT#81050 Add HA_CONFIG and PAIR_CONFIG support 5 years ago
test_git.py TT#44969 Provide test cases for `git status --porcelain` mode 7 years ago
test_ngcpcfg.py TT#81050 Add HA_CONFIG and PAIR_CONFIG support 5 years ago
test_ngcpcfg_build_network_interfaces.py TT#71952 Parallelize templated output generation 5 years ago
test_ngcpcfg_build_syntax.py TT#71952 Parallelize templated output generation 5 years ago
test_ngcpcfg_get.py TT#81050 Add HA_CONFIG and PAIR_CONFIG support 5 years ago
test_ngcpcfg_lib_get_all_ips.py TT#76851 Extend get_all_ips test cases 5 years ago
test_ngcpcfg_lib_status.py TT#37401 tt2-process: Fix path handling to avoid duplicate slashes 5 years ago
test_ngcpcfg_patch.py TT#37401 tt2-process: Fix path handling to avoid duplicate slashes 5 years ago
test_ngcpcfg_set_and_del.py TT#78170 Fix option/value parsing for 'ngcpcfg set' in case if value has sign = 5 years ago
testrunner MT#16391 Initial tests using pytest 8 years ago

README.adoc

README
======

Purpose of this directory
-------------------------

This directory provides system tests for ngcpcfg, using pytest (a mature full-featured Python testing tool).

Tips for working with tests
---------------------------

If you're working on a new feature, try to simulate a specific behavior, or need to run ngcpcfg for any other reason,
you might need to run ngcpcfg with a certain environment.
This can be achieved by injecting according environment variables to ngcpcfg.
The following command line provides an example invocation:

[source,bash]
cd t # we're assuming in the following command line that you're inside this testing folder
HELPER=../helper \
HOOKS=../hooks \
CONFIG_POOL=/etc/ \
NGCPCFG=./fixtures/ngcpcfg.cfg \
SCRIPTS=../scripts/ \
FUNCTIONS=../functions/ \
NGCP_BASE_TT2=/tmp/pytest-of-root/pytest-XX/test_YYY/ \
OUTPUT_DIRECTORY=/tmp/  \
TEMPLATE_POOL_BASE=/tmp/pytest-of-root/pytest-XX/test_YYY \
../sbin/ngcpcfg [...]

Test runs
----------

It's recommended to run the tests inside a docker container (see Dockerfile for usage instructions).
Running all available tests from inside the ``t`` directory then is as simple as:

[source,bash]
py.test-3 -v

To run only the tests matching 'test_patch_action' execute:

[source,bash]
py.test-3 -v  -k test_patch_action