@@ -99,15 +99,15 @@ def _fake_import(name: str, *args: Any, **kwargs: Any) -> ModuleType: # noqa: A
9999 return builtin_import (name , * args , ** kwargs )
100100
101101
102- def mock_import (func : Callable [[] , None ]) -> Callable [[] , None ]:
102+ def mock_import (func : Callable [... , None ]) -> Callable [... , None ]:
103103 @functools .wraps (func )
104- def wrap () -> None :
104+ def wrap (* args : Any , ** kwargs : Any ) -> None : # noqa: ANN401
105105 platformdirs_module_items = [item for item in sys .modules .items () if item [0 ].startswith ("platformdirs" )]
106106 try :
107107 builtins .__import__ = _fake_import
108108 for name , _ in platformdirs_module_items :
109109 del sys .modules [name ]
110- return func ()
110+ return func (* args , ** kwargs )
111111 finally :
112112 # restore original modules
113113 builtins .__import__ = builtin_import
@@ -118,11 +118,15 @@ def wrap() -> None:
118118
119119
120120@mock_import
121- def test_no_ctypes () -> None :
121+ def test_no_ctypes (func : str ) -> None :
122122 import platformdirs # noqa: PLC0415
123123
124124 assert platformdirs
125125
126+ dirs = platformdirs .PlatformDirs ("MyApp" , "MyCompany" , version = "1.0" )
127+ result = getattr (dirs , func )
128+ assert isinstance (result , str )
129+
126130
127131def test_mypy_subclassing () -> None :
128132 # Ensure that PlatformDirs / AppDirs is seen as a valid superclass by mypy
0 commit comments