summaryrefslogtreecommitdiff
path: root/tests/integration/stack.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/integration/stack.py')
-rw-r--r--tests/integration/stack.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/integration/stack.py b/tests/integration/stack.py
new file mode 100644
index 000000000..a049b4892
--- /dev/null
+++ b/tests/integration/stack.py
@@ -0,0 +1,39 @@
+import os
+import pytest
+
+from buildstream import _yaml
+
+from tests.testutils import cli_integration as cli
+from tests.testutils.integration import format_files, walk_dir
+
+
+pytestmark = pytest.mark.integration
+
+
+DATA_DIR = os.path.join(
+ os.path.dirname(os.path.realpath(__file__)),
+ "project"
+)
+
+
+@pytest.mark.datafiles(DATA_DIR)
+def test_stack(cli, tmpdir, datafiles):
+ project = os.path.join(datafiles.dirname, datafiles.basename)
+ checkout = os.path.join(cli.directory, 'checkout')
+ element_path = os.path.join(project, 'elements')
+ element_name = 'stack/stack.bst'
+
+ res = cli.run(project=project, args=['build', element_name])
+ assert res.exit_code == 0
+
+ cli.run(project=project, args=['checkout', element_name, checkout])
+ assert res.exit_code == 0
+
+ with open(os.path.join(checkout, 'hi')) as f:
+ hi = f.read()
+
+ with open(os.path.join(checkout, 'another-hi')) as f:
+ another_hi = f.read()
+
+ assert hi == "Hi\n"
+ assert another_hi == "Another hi\n"