12817c09bb
Always ensure we have the correct machine arch by storing to/reading from a file rather than depending on global variable that for some reason is not always populated... Signed-off-by: Adam Warner <me@adamwarner.co.uk> no need for global variable Signed-off-by: Adam Warner <me@adamwarner.co.uk> Use a file in the temporary FTL download directory Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net> Local binary variable named to l_binary. Disambiguate from global binary. Allow 'binary' to be shadowed for testing. Use ./ftlbinary in all operations. Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net> Revert shadow ability on binary variable. Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net> Remove unused tests, binary variable can not be overridden. Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net> This should work here, too Signed-off-by: Adam Warner <me@adamwarner.co.uk> binary name is passed through from pihole checkout Signed-off-by: Adam Warner <me@adamwarner.co.uk> Add comments Signed-off-by: Adam Warner <me@adamwarner.co.uk> OK, let's try it this way again Signed-off-by: Adam Warner <me@adamwarner.co.uk> we might be getting somewhere.. squash after this I think! Signed-off-by: Adam Warner <me@adamwarner.co.uk> This is a test to see if it fixes the aarch64 test (we are definitely squashing these commits Signed-off-by: Adam Warner <me@adamwarner.co.uk> fix the rest of the tests Signed-off-by: Adam Warner <me@adamwarner.co.uk> Remove trailing whitespace in the files we've touched here Signed-off-by: Adam Warner <me@adamwarner.co.uk> |
||
---|---|---|
.. | ||
__init__.py | ||
centos.Dockerfile | ||
conftest.py | ||
debian.Dockerfile | ||
fedora.Dockerfile | ||
README.md | ||
test_000_build_containers.py | ||
test_automated_install.py | ||
test_centos_fedora_support.py | ||
test_shellcheck.py |
Recommended way to run tests
Make sure you have Docker and Python w/pip package manager.
From command line all you need to do is:
pip install tox
tox
Tox handles setting up a virtual environment for python dependancies, installing dependancies, building the docker images used by tests, and finally running tests. It's an easy way to have travis-ci like build behavior locally.
Alternative py.test method of running tests
You're responsible for setting up your virtual env and dependancies in this situation.
py.test -vv -n auto -m "build_stage"
py.test -vv -n auto -m "not build_stage"
The build_stage tests have to run first to create the docker images, followed by the actual tests which utilize said images. Unless you're changing your dockerfiles you shouldn't have to run the build_stage every time - but it's a good idea to rebuild at least once a day in case the base Docker images or packages change.
How do I debug python?
Highly recommended: Setup PyCharm on a Docker enabled machine. Having a python debugger like PyCharm changes your life if you've never used it :)