diff options
author | Noah Gorny <noah@gittabags.com> | 2020-07-02 21:59:43 +0300 |
---|---|---|
committer | Noah Gorny <noah@gittabags.com> | 2020-08-06 19:25:31 +0300 |
commit | aae63795b2bf5bcde9e846215fd62fa1addd60a4 (patch) | |
tree | aef800526767be5e2ca5c2f647efb4d463a79721 | |
parent | 3d3c7b62f47f55bd0a5cf1673923b03c6e7553b3 (diff) | |
download | pip-aae63795b2bf5bcde9e846215fd62fa1addd60a4.tar.gz |
reqfile: Update extra-index-url/index-url in session from requirements file
Also update the relevant tests
-rw-r--r-- | src/pip/_internal/network/session.py | 8 | ||||
-rw-r--r-- | src/pip/_internal/req/req_file.py | 4 | ||||
-rw-r--r-- | tests/unit/test_req_file.py | 13 |
3 files changed, 21 insertions, 4 deletions
diff --git a/src/pip/_internal/network/session.py b/src/pip/_internal/network/session.py index 39a4a546e..68ef68db5 100644 --- a/src/pip/_internal/network/session.py +++ b/src/pip/_internal/network/session.py @@ -305,6 +305,14 @@ class PipSession(requests.Session): for host in trusted_hosts: self.add_trusted_host(host, suppress_logging=True) + def update_index_urls(self, new_index_urls): + # type: (List[str]) -> None + """ + :param new_index_urls: New index urls to update the authentication + handler with. + """ + self.auth.index_urls = new_index_urls + def add_trusted_host(self, host, source=None, suppress_logging=False): # type: (str, Optional[str], bool) -> None """ diff --git a/src/pip/_internal/req/req_file.py b/src/pip/_internal/req/req_file.py index 105058228..72a568bdf 100644 --- a/src/pip/_internal/req/req_file.py +++ b/src/pip/_internal/req/req_file.py @@ -256,6 +256,10 @@ def handle_option_line( value = relative_to_reqs_file find_links.append(value) + if session: + # We need to update the auth urls in session + session.update_index_urls(index_urls) + search_scope = SearchScope( find_links=find_links, index_urls=index_urls, diff --git a/tests/unit/test_req_file.py b/tests/unit/test_req_file.py index 879f088a4..69d93a0cd 100644 --- a/tests/unit/test_req_file.py +++ b/tests/unit/test_req_file.py @@ -341,17 +341,22 @@ class TestProcessLine(object): line_processor("--no-index", "file", 1, finder=finder) assert finder.index_urls == [] - def test_set_finder_index_url(self, line_processor, finder): - line_processor("--index-url=url", "file", 1, finder=finder) + def test_set_finder_index_url(self, line_processor, finder, session): + line_processor( + "--index-url=url", "file", 1, finder=finder, session=session) assert finder.index_urls == ['url'] + assert session.auth.index_urls == ['url'] def test_set_finder_find_links(self, line_processor, finder): line_processor("--find-links=url", "file", 1, finder=finder) assert finder.find_links == ['url'] - def test_set_finder_extra_index_urls(self, line_processor, finder): - line_processor("--extra-index-url=url", "file", 1, finder=finder) + def test_set_finder_extra_index_urls( + self, line_processor, finder, session): + line_processor( + "--extra-index-url=url", "file", 1, finder=finder, session=session) assert finder.index_urls == ['url'] + assert session.auth.index_urls == ['url'] def test_set_finder_trusted_host( self, line_processor, caplog, session, finder |