diff --git a/tests/test_install.py b/tests/test_install.py index 375149cac3..b814b736a0 100644 --- a/tests/test_install.py +++ b/tests/test_install.py @@ -22,27 +22,8 @@ def test_help_text(monkeypatch, capsys): assert "apps you can run from anywhere" in captured.out -def install_package(capsys, pipx_temp_env, caplog, package, package_name=""): - if not package_name: - package_name = package - - run_pipx_cli(["install", package, "--verbose"]) - captured = capsys.readouterr() - assert f"installed package {package_name}" in captured.out - if not sys.platform.startswith("win"): - # TODO assert on windows too - # https://github.com/pypa/pipx/issues/217 - assert "symlink missing or pointing to unexpected location" not in captured.out - assert "not modifying" not in captured.out - assert "is not on your PATH environment variable" not in captured.out - assert "⚠️" not in caplog.text - assert "WARNING" not in caplog.text - - -def install_multiple_packages(capsys, pipx_temp_env, caplog, packages, package_names=()): - if not package_names: - package_names = packages - elif len(package_names) != len(packages): +def install_packages(capsys, pipx_temp_env, caplog, packages, package_names=()): + if len(package_names) != len(packages): package_names = packages run_pipx_cli(["install", *packages, "--verbose"]) @@ -64,11 +45,11 @@ def install_multiple_packages(capsys, pipx_temp_env, caplog, packages, package_n [("pycowsay", "pycowsay"), ("black", PKG["black"]["spec"])], ) def test_install_easy_packages(capsys, pipx_temp_env, caplog, package_name, package_spec): - install_package(capsys, pipx_temp_env, caplog, package_spec, package_name) + install_packages(capsys, pipx_temp_env, caplog, [package_spec], [package_name]) def test_install_easy_multiple_packages(capsys, pipx_temp_env, caplog): - install_multiple_packages( + install_packages( capsys, pipx_temp_env, caplog, @@ -92,7 +73,7 @@ def test_install_tricky_packages(capsys, pipx_temp_env, caplog, package_name, pa if sys.platform.startswith("win") and package_name == "ansible": pytest.skip("Ansible is not installable on Windows") - install_package(capsys, pipx_temp_env, caplog, package_spec, package_name) + install_packages(capsys, pipx_temp_env, caplog, [package_spec], [package_name]) def test_install_tricky_multiple_packages(capsys, pipx_temp_env, caplog): @@ -102,7 +83,7 @@ def test_install_tricky_multiple_packages(capsys, pipx_temp_env, caplog): packages = ["cloudtoken", "awscli", "shell-functools"] package_specs = [PKG[package]["spec"] for package in packages] - install_multiple_packages(capsys, pipx_temp_env, caplog, package_specs, packages) + install_packages(capsys, pipx_temp_env, caplog, package_specs, packages) @pytest.mark.parametrize( @@ -114,7 +95,7 @@ def test_install_tricky_multiple_packages(capsys, pipx_temp_env, caplog): ], ) def test_install_package_specs(capsys, pipx_temp_env, caplog, package_name, package_spec): - install_package(capsys, pipx_temp_env, caplog, package_spec, package_name) + install_packages(capsys, pipx_temp_env, caplog, [package_spec], [package_name]) def test_force_install(pipx_temp_env, capsys): @@ -159,7 +140,7 @@ def test_include_deps(pipx_temp_env, capsys): ], ) def test_name_tricky_characters(caplog, capsys, pipx_temp_env, package_name, package_spec): - install_package(capsys, pipx_temp_env, caplog, package_spec, package_name) + install_packages(capsys, pipx_temp_env, caplog, [package_spec], [package_name]) def test_extra(pipx_temp_env, capsys):