(tmpdir)
| 265 | |
| 266 | |
| 267 | def test_resolve_extra_setup_py(tmpdir): |
| 268 | # type: (Tempdir) -> None |
| 269 | with make_source_dir( |
| 270 | name="project1", version="1.0.0", extras_require={"foo": ["project2"]} |
| 271 | ) as project1_dir: |
| 272 | project2_wheel = build_wheel(name="project2", version="2.0.0") |
| 273 | safe_copy(project2_wheel, tmpdir.join(os.path.basename(project2_wheel))) |
| 274 | result = resolve( |
| 275 | requirements=[parse_requirement_string("setuptools")], |
| 276 | build_configuration=BuildConfiguration.create(allow_builds=False), |
| 277 | result_type=InstallableType.WHEEL_FILE, |
| 278 | ) |
| 279 | for resolved_dist in result.distributions: |
| 280 | safe_copy( |
| 281 | resolved_dist.distribution.location, |
| 282 | tmpdir.join(os.path.basename(resolved_dist.distribution.location)), |
| 283 | ) |
| 284 | |
| 285 | resolved_dists = local_resolve( |
| 286 | requirements=[parse_requirement_string("{}[foo]".format(project1_dir))], |
| 287 | repos_configuration=ReposConfiguration.create(find_links=[Repo(tmpdir.path)]), |
| 288 | ) |
| 289 | assert {_parse_requirement(req) for req in ("project1==1.0.0", "project2==2.0.0")} == { |
| 290 | _parse_requirement(resolved_dist.distribution.as_requirement()) |
| 291 | for resolved_dist in resolved_dists |
| 292 | } |
| 293 | |
| 294 | |
| 295 | def test_resolve_extra_wheel(): |
nothing calls this directly
no test coverage detected