Skip to content

Commit

Permalink
Fix test_no_python_pinning
Browse files Browse the repository at this point in the history
  • Loading branch information
Hind-M committed Jun 17, 2024
1 parent 59c3a0a commit da235b5
Showing 1 changed file with 31 additions and 17 deletions.
48 changes: 31 additions & 17 deletions micromamba/tests/test_install.py
Original file line number Diff line number Diff line change
Expand Up @@ -430,28 +430,42 @@ def test_channel_alias(self, alias, existing_cache):
)
def test_no_python_pinning(self, existing_cache):
helpers.install("python=3.9.19", no_dry_run=True)
# res = helpers.install("setuptools=63.4.3", "--no-py-pin", "--json")
res = helpers.install("setuptools=63.4.3", "--no-py-pin")
res = helpers.install("setuptools=63.4.3", "--no-py-pin", "--json")

print(res)
assert False
# keys = {"success", "prefix", "actions", "dry_run"}
# assert keys.issubset(set(res.keys()))
keys = {"success", "prefix", "actions", "dry_run"}
assert keys.issubset(set(res.keys()))

# action_keys = {"LINK", "UNLINK", "PREFIX"}
# assert action_keys.issubset(set(res["actions"].keys()))
action_keys = {"LINK", "UNLINK", "PREFIX"}
assert action_keys.issubset(set(res["actions"].keys()))

# When using `--no-py-pin`, it may or may not update the already installed
# python version, but `python_abi` is installed in any case
# The following tests/assertions consider both cases
expected_link_packages = {"python_abi"}
link_packages = {pkg["name"] for pkg in res["actions"]["LINK"]}
assert expected_link_packages.issubset(link_packages)

# expected_link_packages = {"python"}
# link_packages = {pkg["name"] for pkg in res["actions"]["LINK"]}
# assert expected_link_packages.issubset(link_packages)
# unlink_packages = {pkg["name"] for pkg in res["actions"]["UNLINK"]}
# assert {"python"}.issubset(unlink_packages)
unlink_packages = {pkg["name"] for pkg in res["actions"]["UNLINK"]}
if {"python"}.issubset(link_packages):
assert {"python"}.issubset(unlink_packages)

# py_pkg = [pkg for pkg in res["actions"]["LINK"] if pkg["name"] == "python"][0]
# assert py_pkg["version"] != ("3.9.19")
py_pkg = [pkg for pkg in res["actions"]["LINK"] if pkg["name"] == "python"][0]
assert py_pkg["version"] != ("3.9.19")

py_pkg = [pkg for pkg in res["actions"]["UNLINK"] if pkg["name"] == "python"][0]
assert py_pkg["version"] == ("3.9.19")
else:
assert len(res["actions"]["LINK"]) == 2 # Should be setuptools and python_abi

py_abi_pkg = [pkg for pkg in res["actions"]["LINK"] if pkg["name"] == "python_abi"][0]
assert py_abi_pkg["version"] == ("3.9")
setuptools_pkg = [pkg for pkg in res["actions"]["LINK"] if pkg["name"] == "setuptools"][
0
]
assert setuptools_pkg["version"] == ("63.4.3")

# py_pkg = [pkg for pkg in res["actions"]["UNLINK"] if pkg["name"] == "python"][0]
# assert py_pkg["version"] == ("3.9.19")
assert len(res["actions"]["UNLINK"]) == 1 # Should be setuptools
assert res["actions"]["UNLINK"][0]["name"] == "setuptools"

@pytest.mark.skipif(
helpers.dry_run_tests is helpers.DryRun.ULTRA_DRY,
Expand Down

0 comments on commit da235b5

Please sign in to comment.