test(exec): cover bwrap sandbox mounts

This commit is contained in:
yu-xin-c
2026-06-30 22:34:43 +08:00
committed by Xubin Ren
parent 44a5ed1bc0
commit 2527ce5de9
+31
View File
@@ -57,6 +57,37 @@ class TestBwrapBackend:
tmpfs_targets = {tokens[i + 1] for i in tmpfs_indices} tmpfs_targets = {tokens[i + 1] for i in tmpfs_indices}
assert str(ws.parent) in tmpfs_targets assert str(ws.parent) in tmpfs_targets
def test_tmp_dir_mounted_as_tmpfs(self, tmp_path):
"""Regression coverage for #1948: commands need writable scratch space."""
ws = tmp_path / "project"
result = wrap_command("bwrap", "touch /tmp/probe", str(ws), str(ws))
tokens = _parse(result)
tmpfs_indices = [i for i, t in enumerate(tokens) if t == "--tmpfs"]
tmpfs_targets = {tokens[i + 1] for i in tmpfs_indices}
assert "/tmp" in tmpfs_targets
def test_parent_mask_precedes_workspace_recreation(self, tmp_path):
ws = tmp_path / "project"
result = wrap_command("bwrap", "ls", str(ws), str(ws))
tokens = _parse(result)
parent_mask = next(
i for i, t in enumerate(tokens)
if t == "--tmpfs" and tokens[i + 1] == str(ws.parent)
)
workspace_dir = next(
i for i, t in enumerate(tokens)
if t == "--dir" and tokens[i + 1] == str(ws)
)
workspace_bind = next(
i for i, t in enumerate(tokens)
if t == "--bind" and tokens[i + 1] == str(ws) and tokens[i + 2] == str(ws)
)
chdir = tokens.index("--chdir")
assert parent_mask < workspace_dir < workspace_bind < chdir
def test_cwd_inside_workspace(self, tmp_path): def test_cwd_inside_workspace(self, tmp_path):
ws = tmp_path / "project" ws = tmp_path / "project"
sub = ws / "src" / "lib" sub = ws / "src" / "lib"