from __future__ import annotations from bakrest.server_check import FILE_ATTRIBUTE_DIRECTORY, INVALID_FILE_ATTRIBUTES, share_is_reachable def test_share_is_reachable_returns_true_for_directory_attributes(monkeypatch) -> None: monkeypatch.setattr( "bakrest.server_check.ctypes.windll.kernel32.GetFileAttributesW", lambda path: FILE_ATTRIBUTE_DIRECTORY, ) assert share_is_reachable("\\\\server\\share", 3) def test_share_is_reachable_returns_false_for_invalid_attributes(monkeypatch) -> None: monkeypatch.setattr( "bakrest.server_check.ctypes.windll.kernel32.GetFileAttributesW", lambda path: INVALID_FILE_ATTRIBUTES, ) assert not share_is_reachable("\\\\server\\share", 3) def test_share_is_reachable_returns_false_for_non_directory(monkeypatch) -> None: monkeypatch.setattr( "bakrest.server_check.ctypes.windll.kernel32.GetFileAttributesW", lambda path: 0, ) assert not share_is_reachable("\\\\server\\share", 3)