Skip to content

Commit 15d3833

Browse files
committed
Simplify test setup
1 parent cfeb2c9 commit 15d3833

File tree

1 file changed

+14
-34
lines changed

1 file changed

+14
-34
lines changed

tests/unit/resolution_resolvelib/test_provider.py

Lines changed: 14 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import math
22
from typing import TYPE_CHECKING, Dict, Iterable, Optional, Sequence
3-
from unittest.mock import Mock
43

54
import pytest
65
from pip._vendor.resolvelib.resolvers import RequirementInformation
@@ -21,7 +20,6 @@
2120
PreferenceInformation = RequirementInformation[Requirement, Candidate]
2221

2322

24-
# Utility to build requirement information
2523
def build_req_info(
2624
name: str, parent: Optional[InstallationCandidate] = None
2725
) -> "PreferenceInformation":
@@ -35,36 +33,6 @@ def build_req_info(
3533
return requirement_information
3634

3735

38-
# Utility to construct a mock factory for PipProvider
39-
def create_mock_factory() -> Factory:
40-
return Factory(
41-
finder=Mock(),
42-
preparer=Mock(),
43-
make_install_req=Mock(),
44-
wheel_cache=Mock(),
45-
use_user_site=False,
46-
force_reinstall=False,
47-
ignore_installed=False,
48-
ignore_requires_python=False,
49-
)
50-
51-
52-
# A helper for constructing the test setup in a single call
53-
def setup_provider(
54-
user_requested: Dict[str, int], initial_depths: Optional[Dict[str, float]] = None
55-
) -> PipProvider:
56-
provider = PipProvider(
57-
factory=create_mock_factory(),
58-
constraints={},
59-
ignore_dependencies=False,
60-
upgrade_strategy="to-satisfy-only",
61-
user_requested=user_requested,
62-
)
63-
if initial_depths:
64-
provider._known_depths.update(initial_depths)
65-
return provider
66-
67-
6836
def test_provider_known_depths(factory: Factory) -> None:
6937
# Root requirement is specified by the user
7038
# therefore has an inferred depth of 1
@@ -154,7 +122,7 @@ def test_provider_known_depths(factory: Factory) -> None:
154122
"child-package": [
155123
build_req_info(
156124
"child-package",
157-
InstallationCandidate(
125+
parent=InstallationCandidate(
158126
"parent-package", "1.0", Link("https://parent-package.com")
159127
),
160128
)
@@ -202,9 +170,21 @@ def test_get_preference(
202170
user_requested: Dict[str, int],
203171
known_depths: Dict[str, float],
204172
expected: "Preference",
173+
factory: Factory,
205174
) -> None:
206-
provider = setup_provider(user_requested, known_depths)
175+
provider = PipProvider(
176+
factory=factory,
177+
constraints={},
178+
ignore_dependencies=False,
179+
upgrade_strategy="to-satisfy-only",
180+
user_requested=user_requested,
181+
)
182+
183+
if known_depths:
184+
provider._known_depths.update(known_depths)
185+
207186
preference = provider.get_preference(
208187
identifier, {}, {}, information, backtrack_causes
209188
)
189+
210190
assert preference == expected, f"Expected {expected}, got {preference}"

0 commit comments

Comments
 (0)