diff options
| -rw-r--r-- | fietsboek/__init__.py | 13 | ||||
| -rw-r--r-- | tests/conftest.py | 2 |
2 files changed, 15 insertions, 0 deletions
diff --git a/fietsboek/__init__.py b/fietsboek/__init__.py index b533e97..737ee53 100644 --- a/fietsboek/__init__.py +++ b/fietsboek/__init__.py @@ -143,6 +143,18 @@ def check_db_engine(sqlalchemy_uri: str): ) +def create_data_folders(data_dir: str): + """Creates the subfolders of the data directory. + + :param data_dir: Path to the data directory, from the config. + """ + ddir = Path(data_dir) + LOGGER.debug("Creating %s/tracks/", ddir) + (ddir / "tracks").mkdir(exist_ok=True) + LOGGER.debug("Creating %s/users/", ddir) + (ddir / "users").mkdir(exist_ok=True) + + def main(global_config, **settings): """This function returns a Pyramid WSGI application.""" # Avoid a circular import by not importing at the top level @@ -157,6 +169,7 @@ def main(global_config, **settings): settings["jinja2.newstyle"] = True check_db_engine(parsed_config.sqlalchemy_url) + create_data_folders(parsed_config.data_dir) def data_manager(request): data_dir = Path(request.config.data_dir) diff --git a/tests/conftest.py b/tests/conftest.py index b49dad2..732c8d2 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -76,8 +76,10 @@ def _cleanup_data(app_settings): data_dir = Path(app_settings["fietsboek.data_dir"]) if (data_dir / "tracks").is_dir(): shutil.rmtree(data_dir / "tracks") + (data_dir / "tracks").mkdir() if (data_dir / "users").is_dir(): shutil.rmtree(data_dir / "users") + (data_dir / "users").mkdir() @pytest.fixture(scope='module') def app(app_settings, dbengine, tmp_path_factory): |
