summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Maw <jonathan.maw@codethink.co.uk>2018-01-17 17:05:54 +0000
committerJonathan Maw <jonathan.maw@codethink.co.uk>2018-01-17 17:33:35 +0000
commitf51a56dc92f80cb42ed9c203b7aea054b4ebd8c1 (patch)
treeaddec9d5679a54d2a916744c2e5bb53b0f588eb7
parent446697a7976bb2a2333495fa87843006d5e29aaa (diff)
downloadbuildstream-jonathan/bzr-source-method.tar.gz
test: Add tests that bzr workspace initialization acts as expectedjonathan/bzr-source-method
-rw-r--r--tests/frontend/workspace.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/frontend/workspace.py b/tests/frontend/workspace.py
index 4bfc00e7d..d9201b4d9 100644
--- a/tests/frontend/workspace.py
+++ b/tests/frontend/workspace.py
@@ -1,6 +1,7 @@
import os
import pytest
import shutil
+import subprocess
from tests.testutils import cli, create_repo, ALL_REPO_KINDS
from buildstream import _yaml
@@ -75,6 +76,24 @@ def test_open(cli, tmpdir, datafiles, kind):
@pytest.mark.datafiles(DATA_DIR)
+def test_open_bzr(cli, tmpdir, datafiles):
+ element_name, project, workspace = open_workspace(cli, tmpdir, datafiles, "bzr", False)
+
+ # Check that the .bzr dir exists
+ bzrdir = os.path.join(workspace, ".bzr")
+ assert(os.path.isdir(bzrdir))
+
+ # Check that the correct origin branch is set
+ element_config = _yaml.load(os.path.join(project, "elements", element_name))
+ source_config = element_config['sources'][0]
+ output = subprocess.check_output(["bzr", "info"], cwd=workspace)
+ stripped_url = source_config['url'].lstrip("file:///")
+ expected_output_str = ("checkout of branch: /{}/{}"
+ .format(stripped_url, source_config['track']))
+ assert(expected_output_str in str(output))
+
+
+@pytest.mark.datafiles(DATA_DIR)
@pytest.mark.parametrize("kind", repo_kinds)
def test_open_track(cli, tmpdir, datafiles, kind):
open_workspace(cli, tmpdir, datafiles, kind, True)