Coverage for opt/mealie/lib/python3.12/site-packages/mealie/core/settings/directories.py: 96%
22 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-11-25 17:29 +0000
« prev ^ index » next coverage.py v7.10.6, created at 2025-11-25 17:29 +0000
1from pathlib import Path 1a
4class AppDirectories: 1a
5 def __init__(self, data_dir: Path) -> None: 1a
6 self.DATA_DIR = data_dir 1a
7 self.BACKUP_DIR = data_dir.joinpath("backups") 1a
8 self.USER_DIR = data_dir.joinpath("users") 1a
9 self.RECIPE_DATA_DIR = data_dir.joinpath("recipes") 1a
10 self.TEMPLATE_DIR = data_dir.joinpath("templates") 1a
12 self.GROUPS_DIR = self.DATA_DIR.joinpath("groups") 1a
14 # Deprecated
15 self._TEMP_DIR = data_dir.joinpath(".temp") 1a
16 self._IMG_DIR = data_dir.joinpath("img") 1a
17 self.ensure_directories() 1a
19 @property 1a
20 def IMG_DIR(self): 1a
21 return self._IMG_DIR
23 @property 1a
24 def TEMP_DIR(self): 1a
25 return self._TEMP_DIR 1bc
27 def ensure_directories(self): 1a
28 required_dirs = [ 1a
29 self.GROUPS_DIR,
30 self.BACKUP_DIR,
31 self.TEMPLATE_DIR,
32 self.RECIPE_DATA_DIR,
33 self.USER_DIR,
34 ]
36 for dir in required_dirs: 1a
37 dir.mkdir(parents=True, exist_ok=True) 1a