Repository: scikit-learn/scikit-learn
File: sklearn/tests/test_min_dependencies_readme.py (Python)

Code before:
    if not pyproject_toml_path.exists():
        # Skip the test if the pyproject.toml file is not available.
        # For instance, when installing scikit-learn from wheels
        pytest.skip("pyproject.toml is not available.")

    with pyproject_toml_path.open("rb") as f:
        pyproject_toml = tomllib.load(f)

    pyproject_section_keys = pyproject_section.split(".")
    info = pyproject_toml
    for key in pyproject_section_keys:
        info = info[key]

    pyproject_build_min_versions = {}
    for requirement in info:
        if ">=" in requirement:
            package, version = requirement.split(">=")
        elif "==" in requirement:
            package, version = requirement.split("==")
        else:
            raise NotImplementedError(
                f"{requirement} not supported yet in this test. "
                "Only >= and == are supported for version requirements"
            )

        # It's Cython in pyproject.toml but cython in _min_dependencies.py
        if package == "Cython":
            package = "cython"

        pyproject_build_min_versions[package] = version

    assert sorted(pyproject_build_min_versions) == sorted(expected_packages)

    for package, version in pyproject_build_min_versions.items():
        version = parse_version(version)
        expected_min_version = parse_version(dependent_packages[package][0])
        if package in skip_version_check_for:
            continue

        message = (
            f"{package} has inconsistent minimum versions in pyproject.toml and"
            f" _min_depencies.py: {version} != {expected_min_version}"
        )
        assert version == expected_min_version, message


@pytest.mark.parametrize(
    "pyproject_section, min_dependencies_tag",
    pyproject_section_to_min_dependencies_tag.items(),
)
def test_min_dependencies_pyproject_toml(pyproject_section, min_dependencies_tag):

Review comment (suggestion):
I drew inspiration from @lorentzenchr's playbook here of cleaning-up things around the code I modify, nobody complained so I may be trying to do it more often 😅 

Code after:
    if not pyproject_toml_path.exists():
        # Skip the test if the pyproject.toml file is not available.
        # For instance, when installing scikit-learn from wheels
        pytest.skip("pyproject.toml is not available.")

    with pyproject_toml_path.open("rb") as f:
        pyproject_toml = tomllib.load(f)

    pyproject_section_keys = pyproject_section.split(".")
    info = pyproject_toml
    for key in pyproject_section_keys:
        info = info[key]

    pyproject_build_min_versions = {}
    # Assuming pyproject.toml build section has something like "my-package>=2.3.0"
    # Warning: if you try to modify this regex, bear in mind that there can be upper
    # bounds in release branches so "my-package>=2.3.0,<2.5.0"
    pattern = r"([\w-]+)\s*[>=]=\s*([\d\w.]+)"
    for requirement in info:
        match = re.search(pattern, requirement)
        if match is None:
            raise NotImplementedError(
                f"{requirement} does not match expected regex {pattern!r}. "
                "Only >= and == are supported for version requirements"
            )

        package, version = match.group(1), match.group(2)

        pyproject_build_min_versions[package] = version

    assert sorted(pyproject_build_min_versions) == sorted(expected_packages)

    for package, version in pyproject_build_min_versions.items():
        version = parse_version(version)
        expected_min_version = parse_version(dependent_packages[package][0])
        if package in skip_version_check_for:
            continue

        message = (
            f"{package} has inconsistent minimum versions in pyproject.toml and"
            f" _min_depencies.py: {version} != {expected_min_version}"
        )
        assert version == expected_min_version, message


@pytest.mark.parametrize(
    "pyproject_section, min_dependencies_tag",
    pyproject_section_to_min_dependencies_tag.items(),
)
def test_min_dependencies_pyproject_toml(pyproject_section, min_dependencies_tag):
    """Check versions in pyproject.toml is consistent with _min_dependencies."""