diff options
author | Ed Baunton <ebaunton1@bloomberg.net> | 2018-06-06 14:51:36 +0100 |
---|---|---|
committer | Tristan Van Berkom <tristan.van.berkom@gmail.com> | 2018-06-06 17:56:59 +0000 |
commit | 5dc8ab983def6bdc1ab1f447a9fec8b675aa7310 (patch) | |
tree | 7e5cd29ab0334b94eee577bc79306fe628f7dff5 /tests/integration | |
parent | 7f9216b3da17418e6b918a872896d98d490ae86a (diff) | |
download | buildstream-5dc8ab983def6bdc1ab1f447a9fec8b675aa7310.tar.gz |
Add a kind for Make
Diffstat (limited to 'tests/integration')
-rw-r--r-- | tests/integration/make.py | 47 | ||||
-rw-r--r-- | tests/integration/project/elements/make/makehello.bst | 10 | ||||
-rw-r--r-- | tests/integration/project/files/makehello.tar.gz | bin | 0 -> 432 bytes |
3 files changed, 57 insertions, 0 deletions
diff --git a/tests/integration/make.py b/tests/integration/make.py new file mode 100644 index 000000000..6928cfdc2 --- /dev/null +++ b/tests/integration/make.py @@ -0,0 +1,47 @@ +import os +import pytest + +from tests.testutils import cli_integration as cli +from tests.testutils.integration import assert_contains + + +pytestmark = pytest.mark.integration + + +DATA_DIR = os.path.join( + os.path.dirname(os.path.realpath(__file__)), + "project" +) + + +# Test that a make build 'works' - we use the make sample +# makehello project for this. +@pytest.mark.integration +@pytest.mark.datafiles(DATA_DIR) +def test_make_build(cli, tmpdir, datafiles): + project = os.path.join(datafiles.dirname, datafiles.basename) + checkout = os.path.join(cli.directory, 'checkout') + element_name = 'make/makehello.bst' + + result = cli.run(project=project, args=['build', element_name]) + assert result.exit_code == 0 + + result = cli.run(project=project, args=['checkout', element_name, checkout]) + assert result.exit_code == 0 + + assert_contains(checkout, ['/usr', '/usr/bin', + '/usr/bin/hello']) + + +# Test running an executable built with make +@pytest.mark.datafiles(DATA_DIR) +def test_make_run(cli, tmpdir, datafiles): + project = os.path.join(datafiles.dirname, datafiles.basename) + element_name = 'make/makehello.bst' + + result = cli.run(project=project, args=['build', element_name]) + assert result.exit_code == 0 + + result = cli.run(project=project, args=['shell', element_name, '/usr/bin/hello']) + assert result.exit_code == 0 + assert result.output == 'Hello, world\n' diff --git a/tests/integration/project/elements/make/makehello.bst b/tests/integration/project/elements/make/makehello.bst new file mode 100644 index 000000000..4b5c5ac3b --- /dev/null +++ b/tests/integration/project/elements/make/makehello.bst @@ -0,0 +1,10 @@ +kind: make +description: make test + +depends: +- base.bst + +sources: +- kind: tar + url: project_dir:/files/makehello.tar.gz + ref: fd342a36503a0a0dd37b81ddb4d2b78bd398d912d813339e0de44a6b6c393b8e diff --git a/tests/integration/project/files/makehello.tar.gz b/tests/integration/project/files/makehello.tar.gz Binary files differnew file mode 100644 index 000000000..d0edcb29c --- /dev/null +++ b/tests/integration/project/files/makehello.tar.gz |