diff --git a/src/pydase/config.py b/src/pydase/config.py index b7cacbe..8c73482 100644 --- a/src/pydase/config.py +++ b/src/pydase/config.py @@ -19,6 +19,6 @@ class ServiceConfig(BaseConfig): # type: ignore[misc] class WebServerConfig(BaseConfig): # type: ignore[misc] - generate_new_web_settings: bool = False + generate_web_settings: bool = False - CONFIG_SOURCES = EnvSource(allow=["GENERATE_NEW_WEB_SETTINGS"]) + CONFIG_SOURCES = EnvSource(allow=["GENERATE_WEB_SETTINGS"]) diff --git a/src/pydase/server/web_server/web_server.py b/src/pydase/server/web_server/web_server.py index 4878f83..2ab8a6d 100644 --- a/src/pydase/server/web_server/web_server.py +++ b/src/pydase/server/web_server/web_server.py @@ -69,7 +69,7 @@ class WebServer: css: str | Path | None = None, enable_cors: bool = True, config_dir: Path = ServiceConfig().config_dir, - generate_new_web_settings: bool = WebServerConfig().generate_new_web_settings, + generate_web_settings: bool = WebServerConfig().generate_web_settings, **kwargs: Any, ) -> None: self.observer = data_service_observer @@ -80,7 +80,7 @@ class WebServer: self.css = css self.enable_cors = enable_cors self._service_config_dir = config_dir - self._generate_new_web_settings = generate_new_web_settings + self._generate_web_settings = generate_web_settings self._loop: asyncio.AbstractEventLoop self._initialise_configuration() @@ -101,7 +101,7 @@ class WebServer: file_path = self._service_config_dir / "web_settings.json" - if self._generate_new_web_settings: + if self._generate_web_settings: # File does not exist, create it with default content logger.debug("Generating web settings file...") file_path.parent.mkdir( @@ -119,8 +119,7 @@ class WebServer: "Reading configuration from file '%s' ...", file_path.absolute() ) - with file_path.open("r", encoding="utf-8") as file: - web_settings = json.load(file) + web_settings = json.loads(file_path.read_text()) return web_settings diff --git a/tests/server/web_server/test_web_server.py b/tests/server/web_server/test_web_server.py index 519cc84..8fc39b3 100644 --- a/tests/server/web_server/test_web_server.py +++ b/tests/server/web_server/test_web_server.py @@ -38,10 +38,14 @@ def test_web_settings() -> None: observer, host="0.0.0.0", port=8001, - generate_new_web_settings=True, + generate_web_settings=True, config_dir=Path(tmp), ) new_web_settings = server.web_settings # existing entries are not overwritten, new entries are appended assert new_web_settings == {**web_settings, "added": {"displayName": "added"}} + assert json.loads(web_settings_file.read_text()) == { + **web_settings, + "added": {"displayName": "added"}, + }