Skip to content

Commit 9fae572

Browse files
Add test for OSError handling in get_user()
Co-authored-by: RonnyPfannschmidt <[email protected]>
1 parent 669e259 commit 9fae572

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

testing/test_tmpdir.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -367,6 +367,22 @@ def test_get_user(monkeypatch):
367367
assert get_user() is None
368368

369369

370+
def test_get_user_handles_oserror(monkeypatch):
371+
"""Test that get_user() returns None when getpass.getuser() raises OSError.
372+
373+
This handles the Python 3.13+ behavior where getpass.getuser() raises
374+
OSError when no username environment variables (LOGNAME, USER, LNAME,
375+
USERNAME) are set on Windows (#11874).
376+
"""
377+
import getpass
378+
379+
def mock_getuser():
380+
raise OSError("No username set in the environment")
381+
382+
monkeypatch.setattr(getpass, "getuser", mock_getuser)
383+
assert get_user() is None
384+
385+
370386
class TestNumberedDir:
371387
PREFIX = "fun-"
372388

0 commit comments

Comments
 (0)