diff options
author | Tristan van Berkom <tristan@codethink.co.uk> | 2020-12-08 17:42:38 +0900 |
---|---|---|
committer | Tristan van Berkom <tristan@codethink.co.uk> | 2020-12-10 21:40:20 +0900 |
commit | 091c9c8555f37b2ac50c0c696bb367fb992cb899 (patch) | |
tree | 23cb74a92638ec18677313d1f8735dc8426ab853 /tests/format/stack.py | |
parent | 0b94cd15c725f1cbf1b8fc4bca17374396e1a299 (diff) | |
download | buildstream-tristan/stack-require-depends-all.tar.gz |
tests/format/stack.py: Test stack dependency typestristan/stack-require-depends-all
Assert that errors are raised when stack dependencies are declared as
build-only or runtime-only dependencies.
Diffstat (limited to 'tests/format/stack.py')
-rw-r--r-- | tests/format/stack.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/format/stack.py b/tests/format/stack.py new file mode 100644 index 000000000..b014e9b5d --- /dev/null +++ b/tests/format/stack.py @@ -0,0 +1,22 @@ +# Pylint doesn't play well with fixtures and dependency injection from pytest +# pylint: disable=redefined-outer-name + +import os +import pytest + +from buildstream.exceptions import ErrorDomain +from buildstream.testing import cli # pylint: disable=unused-import + +DATA_DIR = os.path.join(os.path.dirname(os.path.realpath(__file__)), "stack") + + +# +# Assert that we have errors when trying to have runtime-only or +# build-only dependencies. +# +@pytest.mark.datafiles(DATA_DIR) +@pytest.mark.parametrize("target", ["build-only-stack.bst", "runtime-only-stack.bst",]) +def test_require_build_and_run(cli, datafiles, target): + project = str(datafiles) + result = cli.run(project=project, args=["show", target]) + result.assert_main_error(ErrorDomain.ELEMENT, "stack-requires-build-and-run") |