Files
pipenv/tests/integration/test_install_misc.py
Matt Davis 6ac1451ec8 stop using requirementslib models (#5793)
* Move away from requirementslib models

* Revise test since PEP-440 does not support wildcard versions but does support equivalent compatible release specifiers.

* simplify and remove dead code

* Ensure the os_name marker is AND with the other markers.

* Move what we still need from requirementslib into the pipenv utils and stop vendoring it.

* Remove requirementslib.

* force upgrade of virtualenv for python 3.12

* remove virtualenv-clone

* Update vcs specifiers documentation; infer name from specific pip line formats where possible.

* Provide helpful text and error for recently removed commands

* Set the right log levels and verbosity to show users the errors generated by pip resolver when supplying -v flag

* Fix the collection of all matching package hashes for non-pypi indexes.  Plus lesson from testing torch which contains local identifiers.
2023-08-19 16:36:52 -04:00

28 lines
774 B
Python

import pytest
from .conftest import DEFAULT_PRIVATE_PYPI_SERVER
@pytest.mark.urls
@pytest.mark.extras
@pytest.mark.install
def test_install_uri_with_extras(pipenv_instance_pypi):
server = DEFAULT_PRIVATE_PYPI_SERVER.replace("/simple", "")
file_uri = f"{server}/packages/plette/plette-0.2.2-py2.py3-none-any.whl"
with pipenv_instance_pypi() as p:
with open(p.pipfile_path, 'w') as f:
contents = f"""
[[source]]
url = "{p.index_url}"
verify_ssl = false
name = "testindex"
[packages]
plette = {{file = "{file_uri}", extras = ["validation"]}}
"""
f.write(contents)
c = p.pipenv("install")
assert c.returncode == 0
assert "plette" in p.lockfile["default"]
assert "cerberus" in p.lockfile["default"]