63 lines
2.0 KiB
INI
63 lines
2.0 KiB
INI
[tox]
|
|
envlist = init_lint, init_unit, multipass
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
basepython=python3
|
|
install_command = pip install {opts} {packages}
|
|
setenv =
|
|
PATH = /snap/bin:{env:PATH}
|
|
passenv = HOME TERM
|
|
whitelist_externals =
|
|
sudo
|
|
/snap/bin/snapcraft
|
|
|
|
[testenv:snap]
|
|
# Testing environment for the gerrit gate. Named 'snap' to conform to
|
|
# the requirements of the snap friendly job that we inherit from in
|
|
# .zuul.yaml.
|
|
basepython=python3
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
{toxinidir}/tools/lxd_build.sh
|
|
{toxinidir}/tests/basic-test.sh
|
|
{toxinidir}/tests/test_horizonlogin.py
|
|
|
|
[testenv:multipass]
|
|
# Default testing environment for a human operated machine. Builds the
|
|
# snap in a multipass instance, then runs tests in a separate multipass
|
|
# instance. This makes the fewest changes to your personal computer,
|
|
# but is heavier on system requirements. For a more lightweight test,
|
|
# use the "snap" environment above. Beware that you will wind up with
|
|
# a lot of things installed, including potentially the locally built
|
|
# version of MicroStack!
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
{toxinidir}/tools/multipass_build.sh
|
|
{toxinidir}/tests/basic-test.sh -m
|
|
|
|
[testenv:basic]
|
|
# Just run basic_test.sh, with multipass support.
|
|
commands =
|
|
{toxinidir}/tests/basic-test.sh -m
|
|
|
|
[testenv:init_lint]
|
|
deps = -r{toxinidir}/tools/init/test-requirements.txt
|
|
-r{toxinidir}/tools/init/requirements.txt
|
|
commands = flake8 {toxinidir}/tools/init/init/
|
|
|
|
[testenv:init_unit]
|
|
deps = -r{toxinidir}/tools/init/test-requirements.txt
|
|
-r{toxinidir}/tools/init/requirements.txt
|
|
commands = stestr run {posargs}
|
|
|
|
[testenv:browser]
|
|
# Run browser tests. Assumes that you have the snap installed and
|
|
# initialized locally, and a valid DISPLAY (install xvfb for a virtual
|
|
# one).
|
|
# TODO: figure out how to integrate this w/ multipass. (e.g. setup
|
|
# port forwarding and call into the mulitpass machine.)
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
{toxinidir}/tests/test_horizonlogin.py
|