craftbeerpi4-pione/venv/lib/python3.8/site-packages/isort/utils.py

16 lines
665 B
Python

import os
import sys
def exists_case_sensitive(path: str) -> bool:
"""Returns if the given path exists and also matches the case on Windows.
When finding files that can be imported, it is important for the cases to match because while
file os.path.exists("module.py") and os.path.exists("MODULE.py") both return True on Windows,
Python can only import using the case of the real file.
"""
result = os.path.exists(path)
if (sys.platform.startswith("win") or sys.platform == "darwin") and result: # pragma: no cover
directory, basename = os.path.split(path)
result = basename in os.listdir(directory)
return result