diff --git a/pre_commit/languages/docker.py b/pre_commit/languages/docker.py index 8eaf6f4e..8f7c72df 100644 --- a/pre_commit/languages/docker.py +++ b/pre_commit/languages/docker.py @@ -75,14 +75,14 @@ def install_environment( os.mkdir(directory) -def getuid(): +def getuid(): # pragma: windows no cover try: return os.getuid() except AttributeError: return FALLBACK_UID -def getgid(): +def getgid(): # pragma: windows no cover try: return os.getgid() except AttributeError: diff --git a/tests/languages/docker_test.py b/tests/languages/docker_test.py index 9f7f55cf..43b7d1ce 100644 --- a/tests/languages/docker_test.py +++ b/tests/languages/docker_test.py @@ -13,3 +13,17 @@ def test_docker_is_running_process_error(): side_effect=CalledProcessError(*(None,) * 4), ): assert docker.docker_is_running() is False + + +def test_docker_fallback_uid(): + def invalid_attribute(): + raise AttributeError + with mock.patch('os.getuid', invalid_attribute): + assert docker.getuid() == docker.FALLBACK_UID + + +def test_docker_fallback_gid(): + def invalid_attribute(): + raise AttributeError + with mock.patch('os.getgid', invalid_attribute): + assert docker.getgid() == docker.FALLBACK_GID