From: Can Sarıgöl Date: Sat, 17 Aug 2019 15:09:49 +0000 (+0300) Subject: Add trust_env property to BaseClient (#187) X-Git-Tag: 0.7.0~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=04d5ffb01b99397a5b0185db0515e8f7b4131cff;p=thirdparty%2Fhttpx.git Add trust_env property to BaseClient (#187) --- diff --git a/httpx/api.py b/httpx/api.py index be3390e4..84892880 100644 --- a/httpx/api.py +++ b/httpx/api.py @@ -32,7 +32,7 @@ def request( cert: CertTypes = None, verify: VerifyTypes = True, stream: bool = False, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: with Client() as client: return client.request( @@ -66,7 +66,7 @@ def get( cert: CertTypes = None, verify: VerifyTypes = True, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return request( "GET", @@ -96,7 +96,7 @@ def options( cert: CertTypes = None, verify: VerifyTypes = True, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return request( "OPTIONS", @@ -126,7 +126,7 @@ def head( cert: CertTypes = None, verify: VerifyTypes = True, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return request( "HEAD", @@ -159,7 +159,7 @@ def post( cert: CertTypes = None, verify: VerifyTypes = True, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return request( "POST", @@ -195,7 +195,7 @@ def put( cert: CertTypes = None, verify: VerifyTypes = True, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return request( "PUT", @@ -231,7 +231,7 @@ def patch( cert: CertTypes = None, verify: VerifyTypes = True, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return request( "PATCH", @@ -267,7 +267,7 @@ def delete( cert: CertTypes = None, verify: VerifyTypes = True, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return request( "DELETE", diff --git a/httpx/client.py b/httpx/client.py index 9d704b33..4a2fb88e 100644 --- a/httpx/client.py +++ b/httpx/client.py @@ -65,7 +65,7 @@ class BaseClient: app: typing.Callable = None, raise_app_exceptions: bool = True, backend: ConcurrencyBackend = None, - trust_env: bool = True, + trust_env: bool = None, ): if backend is None: backend = AsyncioBackend() @@ -106,7 +106,7 @@ class BaseClient: self.max_redirects = max_redirects self.dispatch = async_dispatch self.concurrency_backend = backend - self.trust_env = trust_env + self.trust_env = True if trust_env is None else trust_env def merge_url(self, url: URLTypes) -> URL: url = self.base_url.join(relative_url=url) @@ -142,7 +142,7 @@ class BaseClient: verify: VerifyTypes = None, cert: CertTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: if auth is None: auth = self.auth @@ -155,7 +155,7 @@ class BaseClient: if auth is None: if url.username or url.password: auth = HTTPBasicAuth(username=url.username, password=url.password) - elif trust_env: + elif self.trust_env if trust_env is None else trust_env: netrc_login = get_netrc_login(url.authority) if netrc_login: netrc_username, _, netrc_password = netrc_login @@ -342,7 +342,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: return await self.request( "GET", @@ -372,7 +372,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: return await self.request( "OPTIONS", @@ -402,7 +402,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: return await self.request( "HEAD", @@ -435,7 +435,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: return await self.request( "POST", @@ -471,7 +471,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: return await self.request( "PUT", @@ -507,7 +507,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: return await self.request( "PATCH", @@ -543,7 +543,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: return await self.request( "DELETE", @@ -580,7 +580,7 @@ class AsyncClient(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> AsyncResponse: url = self.merge_url(url) headers = self.merge_headers(headers) @@ -664,7 +664,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: url = self.merge_url(url) headers = self.merge_headers(headers) @@ -733,7 +733,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return self.request( "GET", @@ -763,7 +763,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return self.request( "OPTIONS", @@ -793,7 +793,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return self.request( "HEAD", @@ -826,7 +826,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return self.request( "POST", @@ -862,7 +862,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return self.request( "PUT", @@ -898,7 +898,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return self.request( "PATCH", @@ -934,7 +934,7 @@ class Client(BaseClient): cert: CertTypes = None, verify: VerifyTypes = None, timeout: TimeoutTypes = None, - trust_env: bool = True, + trust_env: bool = None, ) -> Response: return self.request( "DELETE", diff --git a/tests/client/test_auth.py b/tests/client/test_auth.py index 9127df86..6cc64a7e 100644 --- a/tests/client/test_auth.py +++ b/tests/client/test_auth.py @@ -92,3 +92,11 @@ def test_trust_env_auth(): assert response.status_code == 200 assert response.json() == {"auth": None} + + with Client(dispatch=MockDispatch(), trust_env=False) as client: + response = client.get(url, trust_env=True) + + assert response.status_code == 200 + assert response.json() == { + "auth": "Basic ZXhhbXBsZS11c2VybmFtZTpleGFtcGxlLXBhc3N3b3Jk" + }