summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhillip Smyth <phillip.smyth@codethink.co.uk>2018-04-04 13:18:49 +0100
committerPhillip Smyth <phillip.smyth@codethink.co.uk>2018-04-13 11:39:20 +0100
commite2751712eeeef21fa5b34f41293e6ef0c13c6136 (patch)
tree2fc7eda6caee33f4a6d58b61013c6ca32620157e
parentcb38665143e6a93f21a08416c869f996b528459f (diff)
downloadbuildstream-Move-_list_dir_contents-to-runcli.tar.gz
Move _list_dir_contents to runcliMove-_list_dir_contents-to-runcli
-rw-r--r--tests/sources/deb.py22
-rw-r--r--tests/sources/tar.py30
-rw-r--r--tests/sources/zip.py22
-rw-r--r--tests/testutils/runcli.py9
4 files changed, 31 insertions, 52 deletions
diff --git a/tests/sources/deb.py b/tests/sources/deb.py
index a4dbd7866..953e6d349 100644
--- a/tests/sources/deb.py
+++ b/tests/sources/deb.py
@@ -35,16 +35,6 @@ def _copy_deb(start_location, tmpdir):
shutil.copyfile(source, destination)
-def _list_dir_contents(srcdir):
- contents = set()
- for _, dirs, files in os.walk(srcdir):
- for d in dirs:
- contents.add(d)
- for f in files:
- contents.add(f)
- return contents
-
-
# Test that without ref, consistency is set appropriately.
@pytest.mark.skipif(HAVE_ARPY is False, reason="arpy is not available")
@pytest.mark.datafiles(os.path.join(DATA_DIR, 'no-ref'))
@@ -127,8 +117,8 @@ def test_stage_default_basedir(cli, tmpdir, datafiles):
# Check that the content of the first directory is checked out (base-dir: '')
original_dir = os.path.join(str(datafiles), "content")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -155,8 +145,8 @@ def test_stage_no_basedir(cli, tmpdir, datafiles):
# Check that the full content of the tarball is checked out (base-dir: '')
original_dir = os.path.join(str(datafiles), "content")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -183,6 +173,6 @@ def test_stage_explicit_basedir(cli, tmpdir, datafiles):
# Check that the content of the first directory is checked out (base-dir: '')
original_dir = os.path.join(str(datafiles), "content")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
diff --git a/tests/sources/tar.py b/tests/sources/tar.py
index c0b29ee3f..428344a6f 100644
--- a/tests/sources/tar.py
+++ b/tests/sources/tar.py
@@ -105,16 +105,6 @@ def test_track_warning(cli, tmpdir, datafiles):
assert "Potential man-in-the-middle attack!" in result.stderr
-def _list_dir_contents(srcdir):
- contents = set()
- for _, dirs, files in os.walk(srcdir):
- for d in dirs:
- contents.add(d)
- for f in files:
- contents.add(f)
- return contents
-
-
# Test that a staged checkout matches what was tarred up, with the default first subdir
@pytest.mark.datafiles(os.path.join(DATA_DIR, 'fetch'))
@pytest.mark.parametrize("srcdir", ["a", "./a"])
@@ -139,8 +129,8 @@ def test_stage_default_basedir(cli, tmpdir, datafiles, srcdir):
# Check that the content of the first directory is checked out (base-dir: '*')
original_dir = os.path.join(str(datafiles), "content", "a")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -168,8 +158,8 @@ def test_stage_no_basedir(cli, tmpdir, datafiles, srcdir):
# Check that the full content of the tarball is checked out (base-dir: '')
original_dir = os.path.join(str(datafiles), "content")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -197,8 +187,8 @@ def test_stage_explicit_basedir(cli, tmpdir, datafiles, srcdir):
# Check that the content of the first directory is checked out (base-dir: '*')
original_dir = os.path.join(str(datafiles), "content", "a")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -233,8 +223,8 @@ def test_stage_contains_links(cli, tmpdir, datafiles):
# Check that the content of the first directory is checked out (base-dir: '*')
original_dir = os.path.join(str(datafiles), "content", "base-directory")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -262,6 +252,6 @@ def test_stage_default_basedir_lzip(cli, tmpdir, datafiles, srcdir):
# Check that the content of the first directory is checked out (base-dir: '*')
original_dir = os.path.join(str(datafiles), "content", "a")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
diff --git a/tests/sources/zip.py b/tests/sources/zip.py
index b028163f9..41b20eeb6 100644
--- a/tests/sources/zip.py
+++ b/tests/sources/zip.py
@@ -92,16 +92,6 @@ def test_track_warning(cli, tmpdir, datafiles):
assert "Potential man-in-the-middle attack!" in result.stderr
-def _list_dir_contents(srcdir):
- contents = set()
- for _, dirs, files in os.walk(srcdir):
- for d in dirs:
- contents.add(d)
- for f in files:
- contents.add(f)
- return contents
-
-
# Test that a staged checkout matches what was tarred up, with the default first subdir
@pytest.mark.datafiles(os.path.join(DATA_DIR, 'fetch'))
def test_stage_default_basedir(cli, tmpdir, datafiles):
@@ -125,8 +115,8 @@ def test_stage_default_basedir(cli, tmpdir, datafiles):
# Check that the content of the first directory is checked out (base-dir: '*')
original_dir = os.path.join(str(datafiles), "content", "a")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -153,8 +143,8 @@ def test_stage_no_basedir(cli, tmpdir, datafiles):
# Check that the full content of the tarball is checked out (base-dir: '')
original_dir = os.path.join(str(datafiles), "content")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
@@ -181,6 +171,6 @@ def test_stage_explicit_basedir(cli, tmpdir, datafiles):
# Check that the content of the first directory is checked out (base-dir: '*')
original_dir = os.path.join(str(datafiles), "content", "a")
- original_contents = _list_dir_contents(original_dir)
- checkout_contents = _list_dir_contents(checkoutdir)
+ original_contents = cli.list_dir_contents(original_dir)
+ checkout_contents = cli.list_dir_contents(checkoutdir)
assert(checkout_contents == original_contents)
diff --git a/tests/testutils/runcli.py b/tests/testutils/runcli.py
index 521e6487f..e72496be2 100644
--- a/tests/testutils/runcli.py
+++ b/tests/testutils/runcli.py
@@ -329,6 +329,15 @@ class Cli():
output=out,
stderr=err)
+ def list_dir_contents(self, srcdir):
+ contents = set()
+ for _, dirs, files in os.walk(srcdir):
+ for d in dirs:
+ contents.add(d)
+ for f in files:
+ contents.add(f)
+ return contents
+
# Fetch an element state by name by
# invoking bst show on the project with the CLI
#