1
0
Fork 1
mirror of https://gitlab.postmarketos.org/postmarketOS/pmbootstrap.git synced 2025-07-13 03:19:47 +03:00

test: drop args from run (MR 2252)

Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
This commit is contained in:
Caleb Connolly 2024-05-24 18:25:00 +02:00 committed by Oliver Smith
parent 05c86be11c
commit 52cf0e0fe3
No known key found for this signature in database
GPG key ID: 5AE7F5513E0885CB
14 changed files with 48 additions and 48 deletions

View file

@ -37,7 +37,7 @@ def prepare_tmpdir(args: PmbArgs, monkeypatch, tmpdir):
def run_git(git_args, repo="local"):
path = tmpdir + "/" + repo
pmb.helpers.run.user(args, ["git"] + git_args, path, "stdout", output_return=True)
pmb.helpers.run.user(["git"] + git_args, path, "stdout", output_return=True)
# Remote repos
run_git(["init", "-b", "master", "."], "remote")

View file

@ -85,7 +85,7 @@ def test_aportgen(args: PmbArgs, tmpdir):
os.mkdir(tmpdir + "/cross")
# Create aportgen folder -> code path where it still exists
pmb.helpers.run.user(args, ["mkdir", "-p", pmb.config.work / "aportgen"])
pmb.helpers.run.user(["mkdir", "-p", pmb.config.work / "aportgen"])
# Generate all valid packages (gcc twice -> different code path)
pkgnames = ["musl-armv7",

View file

@ -32,14 +32,14 @@ def args(tmpdir, request):
args.aports = tmpdir
# Copy the devicepkg-dev package (shared device-* APKBUILD code)
pmb.helpers.run.user(args, ["mkdir", "-p", tmpdir + "/main"])
pmb.helpers.run.user(["mkdir", "-p", tmpdir + "/main"])
path_dev = args._aports_real + "/main/devicepkg-dev"
pmb.helpers.run.user(args, ["cp", "-r", path_dev, tmpdir + "/main"])
pmb.helpers.run.user(["cp", "-r", path_dev, tmpdir + "/main"])
# Copy the linux-lg-mako aport (we currently copy patches from there)
pmb.helpers.run.user(args, ["mkdir", "-p", tmpdir + "/device/testing"])
pmb.helpers.run.user(["mkdir", "-p", tmpdir + "/device/testing"])
path_mako = args._aports_real + "/device/testing/linux-lg-mako"
pmb.helpers.run.user(args, ["cp", "-r", path_mako,
pmb.helpers.run.user(["cp", "-r", path_mako,
f"{tmpdir}/device/testing"])
# Copy pmaports.cfg

View file

@ -360,7 +360,7 @@ def test_build_depends_high_level(args: PmbArgs, monkeypatch):
pmb.build.package(args, "hello-world-wrapper")
# Remove hello-world
pmb.helpers.run.root(args, ["rm", output_hello_outside])
pmb.helpers.run.root(["rm", output_hello_outside])
pmb.build.index_repo(args, pmb.config.arch_native)
pmb.helpers.other.cache["built"] = {}
@ -408,8 +408,8 @@ def test_build_local_source_high_level(args: PmbArgs, tmpdir):
# src: Create unreadable file (rsync should skip it)
unreadable = src + "/_unreadable_file"
shutil.copy(args.aports + "/main/hello-world/main.c", unreadable)
pmb.helpers.run.root(args, ["chown", "root:root", unreadable])
pmb.helpers.run.root(args, ["chmod", "500", unreadable])
pmb.helpers.run.root(["chown", "root:root", unreadable])
pmb.helpers.run.root(["chmod", "500", unreadable])
# Test native arch and foreign arch chroot
channel = pmb.config.pmaports.read_config(args)["channel"]
@ -420,22 +420,22 @@ def test_build_local_source_high_level(args: PmbArgs, tmpdir):
# Delete all hello-world --src packages
pattern = f"{args.work}/packages/{channel}/{arch}/hello-world-*_p*.apk"
for path in glob.glob(pattern):
pmb.helpers.run.root(args, ["rm", path])
pmb.helpers.run.root(["rm", path])
assert len(glob.glob(pattern)) == 0
# Build hello-world --src package
pmb.helpers.run.user(args, [pmb.config.pmb_src + "/pmbootstrap.py",
pmb.helpers.run.user([pmb.config.pmb_src + "/pmbootstrap.py",
"--aports", aports, "build", "--src", src,
"hello-world", "--arch", arch])
# Verify that the package has been built and delete it
paths = glob.glob(pattern)
assert len(paths) == 1
pmb.helpers.run.root(args, ["rm", paths[0]])
pmb.helpers.run.root(["rm", paths[0]])
# Clean up: update index, delete temp folder
pmb.build.index_repo(args, pmb.config.arch_native)
pmb.helpers.run.root(args, ["rm", "-r", tmpdir])
pmb.helpers.run.root(["rm", "-r", tmpdir])
def test_build_abuild_leftovers(args: PmbArgs, tmpdir):
@ -471,19 +471,19 @@ def test_build_abuild_leftovers(args: PmbArgs, tmpdir):
channel = pmb.config.pmaports.read_config(args)["channel"]
pattern = f"{args.work}/packages/{channel}/*/hello-world-*_p*.apk"
for path in glob.glob(pattern):
pmb.helpers.run.root(args, ["rm", path])
pmb.helpers.run.root(["rm", path])
assert len(glob.glob(pattern)) == 0
# Build hello-world package
pmb.helpers.run.user(args, [f"{pmb.config.pmb_src}/pmbootstrap.py",
pmb.helpers.run.user([f"{pmb.config.pmb_src}/pmbootstrap.py",
"--aports", aports, "build", "--src", src,
"hello-world", "--arch", pmb.config.arch_native])
# Verify that the package has been built and delete it
paths = glob.glob(pattern)
assert len(paths) == 1
pmb.helpers.run.root(args, ["rm", paths[0]])
pmb.helpers.run.root(["rm", paths[0]])
# Clean up: update index, delete temp folder
pmb.build.index_repo(args, pmb.config.arch_native)
pmb.helpers.run.root(args, ["rm", "-r", tmpdir])
pmb.helpers.run.root(["rm", "-r", tmpdir])

View file

@ -47,7 +47,7 @@ def test_config_user(args: PmbArgs, tmpdir, monkeypatch):
"-w", path_work,
"--aports", args.aports,
"init"])
pmb.helpers.run.user(args, ["sh", "-c", "yes '' | " + cmd],
pmb.helpers.run.user(["sh", "-c", "yes '' | " + cmd],
pmb.config.pmb_src)
# Load and verify default config

View file

@ -26,7 +26,7 @@ def args(request):
def test_file_is_older_than(args: PmbArgs, tmpdir):
# Create a file last modified 10s ago
tempfile = str(tmpdir) + "/test"
pmb.helpers.run.user(args, ["touch", tempfile])
pmb.helpers.run.user(["touch", tempfile])
past = time.time() - 10
os.utime(tempfile, (-1, past))

View file

@ -25,7 +25,7 @@ def test_get_folder_size(args: PmbArgs, tmpdir):
tmpdir = str(tmpdir)
files = 5
for i in range(files):
pmb.helpers.run.user(args, ["dd", "if=/dev/zero", "of=" +
pmb.helpers.run.user(["dd", "if=/dev/zero", "of=" +
tmpdir + "/" + str(i), "bs=1K",
"count=200", "conv=notrunc"])

View file

@ -41,7 +41,7 @@ def test_can_fast_forward(args: PmbArgs, tmpdir):
branch_origin = "fake-branch-origin"
def run_git(git_args):
pmb.helpers.run.user(args, ["git"] + git_args, tmpdir, "stdout")
pmb.helpers.run.user(["git"] + git_args, tmpdir, "stdout")
# Create test git repo
run_git(["init", "-b", "master", "."])
@ -68,14 +68,14 @@ def test_clean_worktree(args: PmbArgs, tmpdir):
func = pmb.helpers.git.clean_worktree
def run_git(git_args):
pmb.helpers.run.user(args, ["git"] + git_args, tmpdir, "stdout")
pmb.helpers.run.user(["git"] + git_args, tmpdir, "stdout")
# Create test git repo
run_git(["init", "-b", "master", "."])
run_git(["commit", "--allow-empty", "-m", "commit on master"])
assert func(args, tmpdir) is True
pmb.helpers.run.user(args, ["touch", "test"], tmpdir)
pmb.helpers.run.user(["touch", "test"], tmpdir)
assert func(args, tmpdir) is False
@ -95,7 +95,7 @@ def test_get_upstream_remote(args: PmbArgs, monkeypatch, tmpdir):
monkeypatch.setattr(pmb.config, "git_repos", git_repos)
def run_git(git_args):
pmb.helpers.run.user(args, ["git"] + git_args, tmpdir, "stdout")
pmb.helpers.run.user(["git"] + git_args, tmpdir, "stdout")
# Create git repo
run_git(["init", "-b", "master", "."])

View file

@ -36,7 +36,7 @@ def test_pmbootstrap_lint(args: PmbArgs, tmpdir):
assert pmb.helpers.lint.check(args, ["hello-world"]) == ""
# Change "pmb:cross-native" to non-existing "pmb:invalid-opt"
pmb.helpers.run.user(args, ["sed", "s/pmb:cross-native/pmb:invalid-opt/g",
pmb.helpers.run.user(["sed", "s/pmb:cross-native/pmb:invalid-opt/g",
"-i", apkbuild_tmp])
# Lint error

View file

@ -212,7 +212,7 @@ def test_parse_invalid_path():
def test_parse_cached(args: PmbArgs, tmpdir):
# Create a real file (cache looks at the last modified date)
path = str(tmpdir) + "/APKINDEX"
pmb.helpers.run.user(args, ["touch", path])
pmb.helpers.run.user(["touch", path])
lastmod = os.path.getmtime(path)
# Fill the cache
@ -297,7 +297,7 @@ def test_parse_virtual():
def test_providers_invalid_package(args: PmbArgs, tmpdir):
# Create empty APKINDEX
path = str(tmpdir) + "/APKINDEX"
pmb.helpers.run.user(args, ["touch", path])
pmb.helpers.run.user(["touch", path])
# Test with must_exist=False
func = pmb.parse.apkindex.providers

View file

@ -43,7 +43,7 @@ def pmbootstrap(args: PmbArgs, tmpdir, parameters, zero_exit=True):
pmb_test.git.copy_dotgit(args, aports)
try:
pmb.helpers.run.user(args, ["./pmbootstrap.py", "--work=" + tmpdir,
pmb.helpers.run.user(["./pmbootstrap.py", "--work=" + tmpdir,
"--mirror-pmOS=", "--aports=" + aports,
"--config=" + config] + parameters,
working_dir=pmb.config.pmb_src)
@ -68,40 +68,40 @@ def setup_work(args: PmbArgs, tmpdir):
# We do this before creating the fake work folder, because then all
# packages are still present.
os.chdir(pmb.config.pmb_src)
pmb.helpers.run.user(args, ["./pmbootstrap.py", "-y", "zap"])
pmb.helpers.run.user(args, ["./pmbootstrap.py", "build_init"])
pmb.helpers.run.user(args, ["./pmbootstrap.py", "shutdown"])
pmb.helpers.run.user(["./pmbootstrap.py", "-y", "zap"])
pmb.helpers.run.user(["./pmbootstrap.py", "build_init"])
pmb.helpers.run.user(["./pmbootstrap.py", "shutdown"])
# Link everything from work (except for "packages") to the tmpdir
for path in pmb.config.work.glob("*"):
if os.path.basename(path) != "packages":
pmb.helpers.run.user(args, ["ln", "-s", path, tmpdir + "/"])
pmb.helpers.run.user(["ln", "-s", path, tmpdir + "/"])
# Copy testdata and selected device aport
for folder in ["device/testing", "main"]:
pmb.helpers.run.user(args, ["mkdir", "-p", args.aports, tmpdir +
pmb.helpers.run.user(["mkdir", "-p", args.aports, tmpdir +
"/_aports/" + folder])
path_original = pmb.helpers.pmaports.find(args, f"device-{args.device}")
pmb.helpers.run.user(args, ["cp", "-r", path_original,
pmb.helpers.run.user(["cp", "-r", path_original,
f"{tmpdir}/_aports/device/testing"])
for pkgname in ["testlib", "testapp", "testsubpkg"]:
pmb.helpers.run.user(args, ["cp", "-r",
pmb.helpers.run.user(["cp", "-r",
"test/testdata/pkgrel_bump/aports/"
f"{pkgname}",
f"{tmpdir}/_aports/main/{pkgname}"])
# Copy pmaports.cfg
pmb.helpers.run.user(args, ["cp", args.aports / "pmaports.cfg", tmpdir +
pmb.helpers.run.user(["cp", args.aports / "pmaports.cfg", tmpdir +
"/_aports"])
# Empty packages folder
channel = pmb.config.pmaports.read_config(args)["channel"]
packages_path = f"{tmpdir}/packages/{channel}"
pmb.helpers.run.user(args, ["mkdir", "-p", packages_path])
pmb.helpers.run.user(args, ["chmod", "777", packages_path])
pmb.helpers.run.user(["mkdir", "-p", packages_path])
pmb.helpers.run.user(["chmod", "777", packages_path])
# Copy over the pmbootstrap config
pmb.helpers.run.user(args, ["cp", args.config, tmpdir +
pmb.helpers.run.user(["cp", args.config, tmpdir +
"/_pmbootstrap.cfg"])
@ -148,7 +148,7 @@ def test_pkgrel_bump_high_level(args: PmbArgs, tmpdir):
channel = pmb.config.pmaports.read_config(args)["channel"]
arch = pmb.config.arch_native
apk_path = f"{tmpdir}/packages/{channel}/{arch}/testlib-1.0-r0.apk"
pmb.helpers.run.root(args, ["rm", apk_path])
pmb.helpers.run.root(["rm", apk_path])
pmbootstrap(args, tmpdir, ["index"])
pmbootstrap(args, tmpdir, ["pkgrel_bump", "--dry", "--auto"], False)
verify_pkgrels(tmpdir, 1, 0, 0)
@ -169,4 +169,4 @@ def test_pkgrel_bump_high_level(args: PmbArgs, tmpdir):
# Clean up
pmbootstrap(args, tmpdir, ["shutdown"])
pmb.helpers.run.root(args, ["rm", "-rf", tmpdir])
pmb.helpers.run.root(["rm", "-rf", tmpdir])

View file

@ -42,7 +42,7 @@ def ssh_create_askpass_script(args: PmbArgs):
def pmbootstrap_run(args: PmbArgs, config, parameters, output="log"):
"""Execute pmbootstrap.py with a test pmbootstrap.conf."""
return pmb.helpers.run.user(args, ["./pmbootstrap.py", "-c", config] +
return pmb.helpers.run.user(["./pmbootstrap.py", "-c", config] +
parameters, working_dir=pmb.config.pmb_src,
output=output)
@ -59,7 +59,7 @@ def pmbootstrap_yes(args: PmbArgs, config, parameters):
shlex.quote(config))
for parameter in parameters:
command += " " + shlex.quote(parameter)
return pmb.helpers.run.user(args, ["/bin/sh", "-c", command],
return pmb.helpers.run.user(["/bin/sh", "-c", command],
working_dir=pmb.config.pmb_src)

View file

@ -162,10 +162,10 @@ def test_core(args: PmbArgs, monkeypatch):
@pytest.mark.skip_ci
def test_sudo_timer(args: PmbArgs):
pmb.helpers.run.root(args, ["whoami"])
pmb.helpers.run.root(["whoami"])
time.sleep(300)
out = pmb.helpers.run.root(args, ["whoami"])
out = pmb.helpers.run.root(["whoami"])
assert out == 0

View file

@ -33,16 +33,16 @@ def test_shell_escape(args: PmbArgs):
"hello world\n": ["printf", "%s world\n", "hello"]}
for expected, cmd in cmds.items():
copy = list(cmd)
core = pmb.helpers.run_core.core(args, str(cmd), cmd,
core = pmb.helpers.run_core.core(str(cmd), cmd,
output_return=True)
assert expected == core
assert cmd == copy
user = pmb.helpers.run.user(args, cmd, output_return=True)
user = pmb.helpers.run.user(cmd, output_return=True)
assert expected == user
assert cmd == copy
root = pmb.helpers.run.root(args, cmd, output_return=True)
root = pmb.helpers.run.root(cmd, output_return=True)
assert expected == root
assert cmd == copy