()
| 133 | |
| 134 | |
| 135 | def 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 | |
| 174 | def test_diamond_local_resolve_cached(): |
nothing calls this directly
no test coverage detected