googleapis / googleapis/google-cloud-python
google-auth: Tests in test__default.py fail if GOOGLE_CLOUD_PROJECT is set in the local environment
- Langage dominant
- Python
- Étoiles
- 5.4k
- Forks
- 1.8k
- Merge moyen
- 3 j 4 h
- PR mergées (30 j)
- 122
Description
If you run the test suite locally with `GOOGLE_CLOUD_PROJECT` set in your environment, several tests in `tests/test__default.py` (such as `test_default_early_out` and `test_default_gdch_service_account_credentials`) will fail.
The `google.auth.default()` function reads `os.environ.get("GOOGLE_CLOUD_PROJECT")` to determine the project ID. Because `os.environ` isn't fully mocked or cleared in these tests, the local environment variable takes precedence over the mocked `project_id` sentinels, resulting in assertion failures.
To fix this, we should properly isolate the tests from the local environment by clearing or mocking the project-related environment variables (e.g., using pytest's `monkeypatch.delenv`) inside `test__default.py`.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Start in tests/test__default.py with test_default_early_out and test_default_gdch_service_account_credentials, then inspect how google.auth.default() reads GOOGLE_CLOUD_PROJECT. Run those tests with the environment variable set and isolate the project-related variables using pytest’s monkeypatch support. Done means the tests pass both with and without GOOGLE_CLOUD_PROJECT in the local environment.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- testing
- Type d'issue
- Bug
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- Calme
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 84/100