MCPcopy
hub / github.com/pex-tool/pex / test_resolve_cache

Function test_resolve_cache

tests/test_resolver.py:135–171  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

133
134
135def test_resolve_cache():
136 # type: () -> None
137 project_wheel = build_wheel(name="project")
138
139 with temporary_dir() as td, temporary_dir() as cache_dir:
140 safe_copy(project_wheel, os.path.join(td, os.path.basename(project_wheel)))
141
142 # Without a cache, each resolve should be isolated, but otherwise identical.
143 with disabled_cache():
144 resolved_dists1 = local_resolve(
145 requirements=[parse_requirement_string("project")],
146 repos_configuration=ReposConfiguration.create(find_links=[Repo(td)]),
147 )
148 with disabled_cache():
149 resolved_dists2 = local_resolve(
150 requirements=[parse_requirement_string("project")],
151 repos_configuration=ReposConfiguration.create(find_links=[Repo(td)]),
152 )
153 assert resolved_dists1 != resolved_dists2
154 assert len(resolved_dists1) == 1
155 assert len(resolved_dists2) == 1
156 assert resolved_dists1[0].direct_requirements == resolved_dists2[0].direct_requirements
157 assert resolved_dists1[0].distribution.location != resolved_dists2[0].distribution.location
158
159 # With a cache, each resolve should be identical.
160 with cache(cache_dir):
161 resolved_dists3 = local_resolve(
162 requirements=[parse_requirement_string("project")],
163 repos_configuration=ReposConfiguration.create(find_links=[Repo(td)]),
164 )
165 resolved_dists4 = local_resolve(
166 requirements=[parse_requirement_string("project")],
167 repos_configuration=ReposConfiguration.create(find_links=[Repo(td)]),
168 )
169 assert resolved_dists1 != resolved_dists3
170 assert resolved_dists2 != resolved_dists3
171 assert resolved_dists3 == resolved_dists4
172
173
174def test_diamond_local_resolve_cached():

Callers

nothing calls this directly

Calls 10

temporary_dirFunction · 0.90
safe_copyFunction · 0.90
parse_requirement_stringFunction · 0.90
RepoClass · 0.90
disabled_cacheFunction · 0.85
local_resolveFunction · 0.85
cacheFunction · 0.85
build_wheelFunction · 0.70
joinMethod · 0.45
createMethod · 0.45

Tested by

no test coverage detected