@@ -45,7 +45,7 @@ def test_default_local_snapshot_base_dir_uses_macos_application_support(tmp_path
4545
4646
4747def test_default_local_snapshot_base_dir_uses_localappdata_on_windows (tmp_path : Path ) -> None :
48- local_app_data = tmp_path / "LocalAppData"
48+ local_app_data = Path ( r"C:\Users\me\AppData\Local" )
4949 result = default_local_snapshot_base_dir (
5050 home = tmp_path / "home" ,
5151 env = {"LOCALAPPDATA" : str (local_app_data )},
@@ -56,6 +56,48 @@ def test_default_local_snapshot_base_dir_uses_localappdata_on_windows(tmp_path:
5656 assert result == local_app_data / "openai-agents-python" / "sandbox" / "snapshots"
5757
5858
59+ def test_default_local_snapshot_base_dir_uses_absolute_appdata_when_localappdata_is_relative (
60+ tmp_path : Path ,
61+ ) -> None :
62+ app_data = Path (r"C:\Users\me\AppData\Roaming" )
63+ result = default_local_snapshot_base_dir (
64+ home = tmp_path / "home" ,
65+ env = {"LOCALAPPDATA" : "relative-local" , "APPDATA" : str (app_data )},
66+ platform = "win32" ,
67+ os_name = "nt" ,
68+ )
69+
70+ assert result == app_data / "openai-agents-python" / "sandbox" / "snapshots"
71+
72+
73+ def test_default_local_snapshot_base_dir_ignores_relative_windows_env_paths (
74+ tmp_path : Path ,
75+ ) -> None :
76+ home = tmp_path / "home"
77+ result = default_local_snapshot_base_dir (
78+ home = home ,
79+ env = {"LOCALAPPDATA" : "relative-local" , "APPDATA" : "relative-roaming" },
80+ platform = "win32" ,
81+ os_name = "nt" ,
82+ )
83+
84+ assert result == home / "AppData" / "Local" / "openai-agents-python" / "sandbox" / "snapshots"
85+
86+
87+ def test_default_local_snapshot_base_dir_ignores_posix_absolute_localappdata_on_windows (
88+ tmp_path : Path ,
89+ ) -> None :
90+ home = tmp_path / "home"
91+ result = default_local_snapshot_base_dir (
92+ home = home ,
93+ env = {"LOCALAPPDATA" : "/tmp/localappdata" },
94+ platform = "win32" ,
95+ os_name = "nt" ,
96+ )
97+
98+ assert result == home / "AppData" / "Local" / "openai-agents-python" / "sandbox" / "snapshots"
99+
100+
59101def test_cleanup_stale_default_local_snapshots_removes_only_old_tar_files (tmp_path : Path ) -> None :
60102 managed_dir = tmp_path / "snapshots"
61103 managed_dir .mkdir ()
0 commit comments