diff --git a/.gitignore b/.gitignore index 88a8b8bc4..598752fa6 100644 --- a/.gitignore +++ b/.gitignore @@ -31,8 +31,11 @@ tests/data/user-key.json # PyCharm configuration: .idea +venv/ # Generated files pylintrc pylintrc.test pytype_output/ + +.python-version diff --git a/.kokoro/trampoline.sh b/.kokoro/trampoline.sh index e8c4251f3..4b4ba9f81 100755 --- a/.kokoro/trampoline.sh +++ b/.kokoro/trampoline.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright 2017 Google Inc. +# Copyright 2017 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/CHANGELOG.md b/CHANGELOG.md index 1613f0687..cc9919ead 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,14 @@ [1]: https://pypi.org/project/google-auth/#history +### [1.11.1](https://www.github.com/googleapis/google-auth-library-python/compare/v1.11.0...v1.11.1) (2020-02-13) + + +### Bug Fixes + +* compute engine id token credentials "with_target_audience" method ([#438](https://www.github.com/googleapis/google-auth-library-python/issues/438)) ([bc0ec93](https://www.github.com/googleapis/google-auth-library-python/commit/bc0ec93dc66fdcaa6a82222386623fa44f24ddfe)) +* update `_GOOGLE_OAUTH2_CERTS_URL` ([#365](https://www.github.com/googleapis/google-auth-library-python/issues/365)) ([054db75](https://www.github.com/googleapis/google-auth-library-python/commit/054db75734756b0e82e7984ca07fa80025edc908)) + ## [1.11.0](https://www.github.com/googleapis/google-auth-library-python/compare/v1.10.2...v1.11.0) (2020-01-23) diff --git a/google/__init__.py b/google/__init__.py index f36d79156..0d0a4c3ab 100644 --- a/google/__init__.py +++ b/google/__init__.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/__init__.py b/google/auth/__init__.py index 5f78cd17e..6b4b78b29 100644 --- a/google/auth/__init__.py +++ b/google/auth/__init__.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/_oauth2client.py b/google/auth/_oauth2client.py index b14a38254..95a9876f3 100644 --- a/google/auth/_oauth2client.py +++ b/google/auth/_oauth2client.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/_service_account_info.py b/google/auth/_service_account_info.py index 790be92e1..3d340c78d 100644 --- a/google/auth/_service_account_info.py +++ b/google/auth/_service_account_info.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/app_engine.py b/google/auth/app_engine.py index aec86a620..ab6995103 100644 --- a/google/auth/app_engine.py +++ b/google/auth/app_engine.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/compute_engine/__init__.py b/google/auth/compute_engine/__init__.py index 461f104dd..5c84234e9 100644 --- a/google/auth/compute_engine/__init__.py +++ b/google/auth/compute_engine/__init__.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/compute_engine/_metadata.py b/google/auth/compute_engine/_metadata.py index 30cd3d43b..2861192d0 100644 --- a/google/auth/compute_engine/_metadata.py +++ b/google/auth/compute_engine/_metadata.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/compute_engine/credentials.py b/google/auth/compute_engine/credentials.py index 0abfc0530..e35907abc 100644 --- a/google/auth/compute_engine/credentials.py +++ b/google/auth/compute_engine/credentials.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -136,6 +136,7 @@ def __init__( token_uri=_DEFAULT_TOKEN_URI, additional_claims=None, service_account_email=None, + signer=None, ): """ Args: @@ -150,6 +151,9 @@ def __init__( service_account_email (str): Optional explicit service account to use to sign JWT tokens. By default, this is the default GCE service account. + signer (google.auth.crypt.Signer): The signer used to sign JWTs. + In case the signer is specified, the request argument will be + ignored. """ super(IDTokenCredentials, self).__init__() @@ -158,11 +162,13 @@ def __init__( service_account_email = sa_info["email"] self._service_account_email = service_account_email - self._signer = iam.Signer( - request=request, - credentials=Credentials(), - service_account_email=service_account_email, - ) + if signer is None: + signer = iam.Signer( + request=request, + credentials=Credentials(), + service_account_email=service_account_email, + ) + self._signer = signer self._token_uri = token_uri self._target_audience = target_audience @@ -182,12 +188,15 @@ def with_target_audience(self, target_audience): google.auth.service_account.IDTokenCredentials: A new credentials instance. """ + # since the signer is already instantiated, + # the request is not needed return self.__class__( - self._signer, + None, service_account_email=self._service_account_email, token_uri=self._token_uri, target_audience=target_audience, additional_claims=self._additional_claims.copy(), + signer=self.signer, ) def _make_authorization_grant_assertion(self): diff --git a/google/auth/credentials.py b/google/auth/credentials.py index 81bbd0316..3cc976b52 100644 --- a/google/auth/credentials.py +++ b/google/auth/credentials.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/crypt/__init__.py b/google/auth/crypt/__init__.py index bf66e7100..39929fa0a 100644 --- a/google/auth/crypt/__init__.py +++ b/google/auth/crypt/__init__.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/crypt/_cryptography_rsa.py b/google/auth/crypt/_cryptography_rsa.py index 285cf5ccf..e94bc681e 100644 --- a/google/auth/crypt/_cryptography_rsa.py +++ b/google/auth/crypt/_cryptography_rsa.py @@ -1,4 +1,4 @@ -# Copyright 2017 Google Inc. +# Copyright 2017 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/crypt/_python_rsa.py b/google/auth/crypt/_python_rsa.py index d53991c38..e288c5016 100644 --- a/google/auth/crypt/_python_rsa.py +++ b/google/auth/crypt/_python_rsa.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/crypt/base.py b/google/auth/crypt/base.py index ceb6e9c06..c98d5bf64 100644 --- a/google/auth/crypt/base.py +++ b/google/auth/crypt/base.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/crypt/rsa.py b/google/auth/crypt/rsa.py index 5da1ba608..8b2d64c10 100644 --- a/google/auth/crypt/rsa.py +++ b/google/auth/crypt/rsa.py @@ -1,4 +1,4 @@ -# Copyright 2017 Google Inc. +# Copyright 2017 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/environment_vars.py b/google/auth/environment_vars.py index 96d2ffc28..6a596f22d 100644 --- a/google/auth/environment_vars.py +++ b/google/auth/environment_vars.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/exceptions.py b/google/auth/exceptions.py index 2be9fd6df..e034c55cd 100644 --- a/google/auth/exceptions.py +++ b/google/auth/exceptions.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/iam.py b/google/auth/iam.py index 0ab5b5549..bd0500457 100644 --- a/google/auth/iam.py +++ b/google/auth/iam.py @@ -1,4 +1,4 @@ -# Copyright 2017 Google Inc. +# Copyright 2017 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/jwt.py b/google/auth/jwt.py index 06e767968..cdd69ac8a 100644 --- a/google/auth/jwt.py +++ b/google/auth/jwt.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/transport/__init__.py b/google/auth/transport/__init__.py index 53aa4ba14..374e7b4d7 100644 --- a/google/auth/transport/__init__.py +++ b/google/auth/transport/__init__.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/transport/_http_client.py b/google/auth/transport/_http_client.py index b52ca7b50..c153763ef 100644 --- a/google/auth/transport/_http_client.py +++ b/google/auth/transport/_http_client.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/transport/grpc.py b/google/auth/transport/grpc.py index 80f6e81ba..fb90fbb4b 100644 --- a/google/auth/transport/grpc.py +++ b/google/auth/transport/grpc.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/transport/requests.py b/google/auth/transport/requests.py index 1c709d4f7..32f59e56b 100644 --- a/google/auth/transport/requests.py +++ b/google/auth/transport/requests.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/auth/transport/urllib3.py b/google/auth/transport/urllib3.py index dbb186bb1..d1905e94e 100644 --- a/google/auth/transport/urllib3.py +++ b/google/auth/transport/urllib3.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/oauth2/__init__.py b/google/oauth2/__init__.py index 6d3ee7f98..4fb71fd1a 100644 --- a/google/oauth2/__init__.py +++ b/google/oauth2/__init__.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/oauth2/_client.py b/google/oauth2/_client.py index 4ba31a87a..448716329 100644 --- a/google/oauth2/_client.py +++ b/google/oauth2/_client.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/oauth2/credentials.py b/google/oauth2/credentials.py index 71d2f6107..1adcbf675 100644 --- a/google/oauth2/credentials.py +++ b/google/oauth2/credentials.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/google/oauth2/id_token.py b/google/oauth2/id_token.py index bc4844513..5113c9926 100644 --- a/google/oauth2/id_token.py +++ b/google/oauth2/id_token.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -67,7 +67,7 @@ # The URL that provides public certificates for verifying ID tokens issued # by Google's OAuth 2.0 authorization server. -_GOOGLE_OAUTH2_CERTS_URL = "https://www.googleapis.com/oauth2/v1/certs" +_GOOGLE_OAUTH2_CERTS_URL = "https://www.googleapis.com/oauth2/v3/certs" # The URL that provides public certificates for verifying ID tokens issued # by Firebase and the Google APIs infrastructure diff --git a/google/oauth2/service_account.py b/google/oauth2/service_account.py index 17fdd516d..af86588d5 100644 --- a/google/oauth2/service_account.py +++ b/google/oauth2/service_account.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/noxfile.py b/noxfile.py index e170ee51d..d75361f73 100644 --- a/noxfile.py +++ b/noxfile.py @@ -25,6 +25,7 @@ "requests", "urllib3", "cryptography", + "responses", "grpcio", ] BLACK_VERSION = "black==19.3b0" diff --git a/setup.py b/setup.py index bbed85e50..09ef6d14a 100644 --- a/setup.py +++ b/setup.py @@ -30,7 +30,7 @@ with io.open("README.rst", "r") as fh: long_description = fh.read() -version = "1.11.0" +version = "1.11.1" setup( name="google-auth", diff --git a/system_tests/app_engine_test_app/appengine_config.py b/system_tests/app_engine_test_app/appengine_config.py index 6339909e5..5a832ac6f 100644 --- a/system_tests/app_engine_test_app/appengine_config.py +++ b/system_tests/app_engine_test_app/appengine_config.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/app_engine_test_app/main.py b/system_tests/app_engine_test_app/main.py index a3354acde..33e61d07b 100644 --- a/system_tests/app_engine_test_app/main.py +++ b/system_tests/app_engine_test_app/main.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. All Rights Reserved. +# Copyright 2016 Google LLC All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/conftest.py b/system_tests/conftest.py index 3f089c4b4..189300707 100644 --- a/system_tests/conftest.py +++ b/system_tests/conftest.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/noxfile.py b/system_tests/noxfile.py index 864a5be32..e37049e52 100644 --- a/system_tests/noxfile.py +++ b/system_tests/noxfile.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/test_app_engine.py b/system_tests/test_app_engine.py index cdf2be436..45a1989a4 100644 --- a/system_tests/test_app_engine.py +++ b/system_tests/test_app_engine.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/test_compute_engine.py b/system_tests/test_compute_engine.py index 44f162792..3217c958a 100644 --- a/system_tests/test_compute_engine.py +++ b/system_tests/test_compute_engine.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/test_default.py b/system_tests/test_default.py index 22213e60f..560ab3284 100644 --- a/system_tests/test_default.py +++ b/system_tests/test_default.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/test_grpc.py b/system_tests/test_grpc.py index f025fc0b7..650fa96a4 100644 --- a/system_tests/test_grpc.py +++ b/system_tests/test_grpc.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/test_oauth2_credentials.py b/system_tests/test_oauth2_credentials.py index 3ecd85078..663d4fc21 100644 --- a/system_tests/test_oauth2_credentials.py +++ b/system_tests/test_oauth2_credentials.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/system_tests/test_service_account.py b/system_tests/test_service_account.py index 793760199..262ce84f5 100644 --- a/system_tests/test_service_account.py +++ b/system_tests/test_service_account.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/compute_engine/test__metadata.py b/tests/compute_engine/test__metadata.py index 0898e1f4e..8b5eece7a 100644 --- a/tests/compute_engine/test__metadata.py +++ b/tests/compute_engine/test__metadata.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/compute_engine/test_credentials.py b/tests/compute_engine/test_credentials.py index ec9d13b63..b861984e0 100644 --- a/tests/compute_engine/test_credentials.py +++ b/tests/compute_engine/test_credentials.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,17 +11,19 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +import base64 import datetime import mock import pytest +import responses from google.auth import _helpers from google.auth import exceptions from google.auth import jwt from google.auth import transport from google.auth.compute_engine import credentials +from google.auth.transport import requests class TestCredentials(object): @@ -270,6 +272,84 @@ def test_with_target_audience(self, sign, get, utcnow): "target_audience": "https://actually.not", } + # Check that the signer have been initialized with a Request object + assert isinstance(self.credentials._signer._request, transport.Request) + + @responses.activate + def test_with_target_audience_integration(self): + """ Test that it is possible to refresh credentials + generated from `with_target_audience`. + + Instead of mocking the methods, the HTTP responses + have been mocked. + """ + + # mock information about credentials + responses.add( + responses.GET, + "http://metadata.google.internal/computeMetadata/v1/instance/" + "service-accounts/default/?recursive=true", + status=200, + content_type="application/json", + json={ + "scopes": "email", + "email": "service-account@example.com", + "aliases": ["default"], + }, + ) + + # mock token for credentials + responses.add( + responses.GET, + "http://metadata.google.internal/computeMetadata/v1/instance/" + "service-accounts/service-account@example.com/token", + status=200, + content_type="application/json", + json={ + "access_token": "some-token", + "expires_in": 3210, + "token_type": "Bearer", + }, + ) + + # mock sign blob endpoint + signature = base64.b64encode(b"some-signature").decode("utf-8") + responses.add( + responses.POST, + "https://iam.googleapis.com/v1/projects/-/serviceAccounts/" + "service-account@example.com:signBlob?alt=json", + status=200, + content_type="application/json", + json={"keyId": "some-key-id", "signature": signature}, + ) + + id_token = "{}.{}.{}".format( + base64.b64encode(b'{"some":"some"}').decode("utf-8"), + base64.b64encode(b'{"exp": 3210}').decode("utf-8"), + base64.b64encode(b"token").decode("utf-8"), + ) + + # mock id token endpoint + responses.add( + responses.POST, + "https://www.googleapis.com/oauth2/v4/token", + status=200, + content_type="application/json", + json={"id_token": id_token, "expiry": 3210}, + ) + + self.credentials = credentials.IDTokenCredentials( + request=requests.Request(), + service_account_email="service-account@example.com", + target_audience="https://audience.com", + ) + + self.credentials = self.credentials.with_target_audience("https://actually.not") + + self.credentials.refresh(requests.Request()) + + assert self.credentials.token is not None + @mock.patch( "google.auth._helpers.utcnow", return_value=datetime.datetime.utcfromtimestamp(0), diff --git a/tests/conftest.py b/tests/conftest.py index 2ccc132e2..7f9a968b7 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/crypt/test__cryptography_rsa.py b/tests/crypt/test__cryptography_rsa.py index 10f926bc7..dbf07c780 100644 --- a/tests/crypt/test__cryptography_rsa.py +++ b/tests/crypt/test__cryptography_rsa.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/crypt/test__python_rsa.py b/tests/crypt/test__python_rsa.py index 08b9503a2..886ee55a2 100644 --- a/tests/crypt/test__python_rsa.py +++ b/tests/crypt/test__python_rsa.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/crypt/test_crypt.py b/tests/crypt/test_crypt.py index 16ff2e0bd..e80502e9b 100644 --- a/tests/crypt/test_crypt.py +++ b/tests/crypt/test_crypt.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/oauth2/test__client.py b/tests/oauth2/test__client.py index 052390aa8..c3ae2af98 100644 --- a/tests/oauth2/test__client.py +++ b/tests/oauth2/test__client.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/oauth2/test_credentials.py b/tests/oauth2/test_credentials.py index af10f2fa4..bdb63e9dd 100644 --- a/tests/oauth2/test_credentials.py +++ b/tests/oauth2/test_credentials.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/oauth2/test_service_account.py b/tests/oauth2/test_service_account.py index 0f9d4600c..897374a6f 100644 --- a/tests/oauth2/test_service_account.py +++ b/tests/oauth2/test_service_account.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test__cloud_sdk.py b/tests/test__cloud_sdk.py index c5c5c2769..049ed9978 100644 --- a/tests/test__cloud_sdk.py +++ b/tests/test__cloud_sdk.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test__default.py b/tests/test__default.py index 2c86f3ffb..35000b04d 100644 --- a/tests/test__default.py +++ b/tests/test__default.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test__helpers.py b/tests/test__helpers.py index 3714af7d3..0c0bad2d2 100644 --- a/tests/test__helpers.py +++ b/tests/test__helpers.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test__oauth2client.py b/tests/test__oauth2client.py index 520f9432a..6b1112b50 100644 --- a/tests/test__oauth2client.py +++ b/tests/test__oauth2client.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test__service_account_info.py b/tests/test__service_account_info.py index 4419f670b..13b2f85a2 100644 --- a/tests/test__service_account_info.py +++ b/tests/test__service_account_info.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test_app_engine.py b/tests/test_app_engine.py index 9559a2cd2..9dfdfa65b 100644 --- a/tests/test_app_engine.py +++ b/tests/test_app_engine.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test_credentials.py b/tests/test_credentials.py index 2a89b01b6..16ddd9b44 100644 --- a/tests/test_credentials.py +++ b/tests/test_credentials.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/test_iam.py b/tests/test_iam.py index 52ab9bd82..c98a138f9 100644 --- a/tests/test_iam.py +++ b/tests/test_iam.py @@ -1,4 +1,4 @@ -# Copyright 2017 Google Inc. +# Copyright 2017 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/transport/compliance.py b/tests/transport/compliance.py index dc7c58be5..e093d761d 100644 --- a/tests/transport/compliance.py +++ b/tests/transport/compliance.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/transport/test__http_client.py b/tests/transport/test__http_client.py index 9e7f108ae..c176cb2f4 100644 --- a/tests/transport/test__http_client.py +++ b/tests/transport/test__http_client.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/transport/test_grpc.py b/tests/transport/test_grpc.py index ca12385dd..857c32bb9 100644 --- a/tests/transport/test_grpc.py +++ b/tests/transport/test_grpc.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/transport/test_requests.py b/tests/transport/test_requests.py index f0321c81b..9aafd88b1 100644 --- a/tests/transport/test_requests.py +++ b/tests/transport/test_requests.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/transport/test_urllib3.py b/tests/transport/test_urllib3.py index 1d7ce5a0e..8a307332a 100644 --- a/tests/transport/test_urllib3.py +++ b/tests/transport/test_urllib3.py @@ -1,4 +1,4 @@ -# Copyright 2016 Google Inc. +# Copyright 2016 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License.