summaryrefslogtreecommitdiff
path: root/tests/frontend/pull.py
diff options
context:
space:
mode:
authorJürg Billeter <j@bitron.ch>2020-06-10 08:26:54 +0200
committerJürg Billeter <j@bitron.ch>2020-06-10 11:22:04 +0200
commit0df31342e9c3c32af55f0ea114a60ab858356173 (patch)
tree869a7c60db613e9f806da61fd1448156d0cf665f /tests/frontend/pull.py
parentc0bc6cfa9b2461e86ff39fa157e10cc9ef77d199 (diff)
downloadbuildstream-juerg/object-file-mode.tar.gz
cascache.py: Fix file modes in checkout()juerg/object-file-mode
Do not copy file mode from casd object file. Do not change non-executable mode bits if file is executable.
Diffstat (limited to 'tests/frontend/pull.py')
-rw-r--r--tests/frontend/pull.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/tests/frontend/pull.py b/tests/frontend/pull.py
index 6a5a41977..c1fa76ab0 100644
--- a/tests/frontend/pull.py
+++ b/tests/frontend/pull.py
@@ -442,6 +442,8 @@ def test_pull_access_rights(cli, tmpdir, datafiles):
project = str(datafiles)
checkout = os.path.join(str(tmpdir), "checkout")
+ umask = utils.get_umask()
+
# Work-around datafiles not preserving mode
os.chmod(os.path.join(project, "files/bin-files/usr/bin/hello"), 0o0755)
@@ -467,15 +469,15 @@ def test_pull_access_rights(cli, tmpdir, datafiles):
st = os.lstat(os.path.join(checkout, "usr/include/pony.h"))
assert stat.S_ISREG(st.st_mode)
- assert stat.S_IMODE(st.st_mode) == 0o0644
+ assert stat.S_IMODE(st.st_mode) == 0o0666 & ~umask
st = os.lstat(os.path.join(checkout, "usr/bin/hello"))
assert stat.S_ISREG(st.st_mode)
- assert stat.S_IMODE(st.st_mode) == 0o0755
+ assert stat.S_IMODE(st.st_mode) == 0o0777 & ~umask
st = os.lstat(os.path.join(checkout, "usr/share/big-file"))
assert stat.S_ISREG(st.st_mode)
- assert stat.S_IMODE(st.st_mode) == 0o0644
+ assert stat.S_IMODE(st.st_mode) == 0o0666 & ~umask
shutil.rmtree(checkout)
@@ -493,15 +495,15 @@ def test_pull_access_rights(cli, tmpdir, datafiles):
st = os.lstat(os.path.join(checkout, "usr/include/pony.h"))
assert stat.S_ISREG(st.st_mode)
- assert stat.S_IMODE(st.st_mode) == 0o0644
+ assert stat.S_IMODE(st.st_mode) == 0o0666 & ~umask
st = os.lstat(os.path.join(checkout, "usr/bin/hello"))
assert stat.S_ISREG(st.st_mode)
- assert stat.S_IMODE(st.st_mode) == 0o0755
+ assert stat.S_IMODE(st.st_mode) == 0o0777 & ~umask
st = os.lstat(os.path.join(checkout, "usr/share/big-file"))
assert stat.S_ISREG(st.st_mode)
- assert stat.S_IMODE(st.st_mode) == 0o0644
+ assert stat.S_IMODE(st.st_mode) == 0o0666 & ~umask
# Tests `bst artifact pull $artifact_ref`