Files
specklepy/tests/unit/test_path.py
T
2023-01-06 14:00:19 +00:00

47 lines
1.5 KiB
Python

import re
import sys
from pathlib import Path
from specklepy.core.helpers import speckle_path_provider
def test_user_application_data_path():
user_path = str(speckle_path_provider.user_application_data_path())
if sys.platform.startswith("win"):
pattern = r"C:\\Users\\.*\\AppData\\Roaming"
elif sys.platform.startswith("darwin"):
pattern = "/Users/.*/.config"
elif sys.platform.startswith("linux"):
if user_path.startswith("/root"):
pattern = "/root/.config"
else:
pattern = "/home/.*/.config"
else:
raise NotImplementedError("Your OS platform is not supported")
match = re.search(pattern, user_path)
assert match
def test_user_application_data_path_override():
path = "/jiberish"
speckle_path_provider.override_application_data_path(path)
user_path = speckle_path_provider.user_application_data_path()
assert Path(path) == user_path
speckle_path_provider.override_application_data_path(None)
user_path = speckle_path_provider.user_application_data_path()
assert Path(path) != user_path
def test_accounts_folder_name_override():
old_folder_name = speckle_path_provider._accounts_folder_name
assert old_folder_name == "Accounts"
new_folder_name = "foobar"
speckle_path_provider.override_accounts_folder_name(new_folder_name)
assert speckle_path_provider._accounts_folder_name == new_folder_name
speckle_path_provider.override_accounts_folder_name(old_folder_name)