Skip to content

Commit c4a8c83

Browse files
committed
Upated unit tests accordingly
1 parent de92847 commit c4a8c83

2 files changed

Lines changed: 28 additions & 37 deletions

File tree

src/configuration.py

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -56,45 +56,46 @@ def init_from_dict(self, config_dict: dict[Any, Any]) -> None:
5656
"""Initialize configuration from a dictionary."""
5757
self._configuration = Configuration(**config_dict)
5858

59-
def check_configuration_loaded(self):
60-
"""Check that configuration is loaded, raise exception instead."""
61-
if self._configuration is None:
62-
raise LogicError("logic error: configuration is not loaded")
63-
6459
@property
6560
def configuration(self) -> Configuration:
6661
"""Return the whole configuration."""
67-
self.check_configuration_loaded()
62+
if self._configuration is None:
63+
raise LogicError("logic error: configuration is not loaded")
6864
return self._configuration
6965

7066
@property
7167
def service_configuration(self) -> ServiceConfiguration:
7268
"""Return service configuration."""
73-
self.check_configuration_loaded()
69+
if self._configuration is None:
70+
raise LogicError("logic error: configuration is not loaded")
7471
return self._configuration.service
7572

7673
@property
7774
def llama_stack_configuration(self) -> LlamaStackConfiguration:
7875
"""Return Llama stack configuration."""
79-
self.check_configuration_loaded()
76+
if self._configuration is None:
77+
raise LogicError("logic error: configuration is not loaded")
8078
return self._configuration.llama_stack
8179

8280
@property
8381
def user_data_collection_configuration(self) -> UserDataCollection:
8482
"""Return user data collection configuration."""
85-
self.check_configuration_loaded()
83+
if self._configuration is None:
84+
raise LogicError("logic error: configuration is not loaded")
8685
return self._configuration.user_data_collection
8786

8887
@property
8988
def mcp_servers(self) -> list[ModelContextProtocolServer]:
9089
"""Return model context protocol servers configuration."""
91-
self.check_configuration_loaded()
90+
if self._configuration is None:
91+
raise LogicError("logic error: configuration is not loaded")
9292
return self._configuration.mcp_servers
9393

9494
@property
9595
def authentication_configuration(self) -> AuthenticationConfiguration:
9696
"""Return authentication configuration."""
97-
self.check_configuration_loaded()
97+
if self._configuration is None:
98+
raise LogicError("logic error: configuration is not loaded")
9899

99100
if self._configuration.authentication is None:
100101
raise LogicError("logic error: authentication configuration is not loaded")
@@ -104,7 +105,8 @@ def authentication_configuration(self) -> AuthenticationConfiguration:
104105
@property
105106
def authorization_configuration(self) -> AuthorizationConfiguration:
106107
"""Return authorization configuration or default no-op configuration."""
107-
self.check_configuration_loaded()
108+
if self._configuration is None:
109+
raise LogicError("logic error: configuration is not loaded")
108110

109111
if self._configuration.authorization is None:
110112
return AuthorizationConfiguration()
@@ -114,19 +116,22 @@ def authorization_configuration(self) -> AuthorizationConfiguration:
114116
@property
115117
def customization(self) -> Optional[Customization]:
116118
"""Return customization configuration."""
117-
self.check_configuration_loaded()
119+
if self._configuration is None:
120+
raise LogicError("logic error: configuration is not loaded")
118121
return self._configuration.customization
119122

120123
@property
121124
def inference(self) -> InferenceConfiguration:
122125
"""Return inference configuration."""
123-
self.check_configuration_loaded()
126+
if self._configuration is None:
127+
raise LogicError("logic error: configuration is not loaded")
124128
return self._configuration.inference
125129

126130
@property
127131
def database_configuration(self) -> DatabaseConfiguration:
128132
"""Return database configuration."""
129-
self.check_configuration_loaded()
133+
if self._configuration is None:
134+
raise LogicError("logic error: configuration is not loaded")
130135
return self._configuration.database
131136

132137

tests/unit/test_configuration.py

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""Unit tests for functions defined in src/configuration.py."""
22

33
import pytest
4-
from configuration import AppConfig
4+
from configuration import AppConfig, LogicError
55
from models.config import ModelContextProtocolServer
66

77

@@ -290,63 +290,49 @@ def test_mcp_servers_property_with_servers() -> None:
290290
def test_configuration_not_loaded():
291291
"""Test that accessing configuration before loading raises an error."""
292292
cfg = AppConfig()
293-
with pytest.raises(
294-
AssertionError, match="logic error: configuration is not loaded"
295-
):
293+
with pytest.raises(LogicError, match="logic error: configuration is not loaded"):
296294
cfg.configuration # pylint: disable=pointless-statement
297295

298296

299297
def test_service_configuration_not_loaded():
300298
"""Test that accessing service_configuration before loading raises an error."""
301299
cfg = AppConfig()
302-
with pytest.raises(
303-
AssertionError, match="logic error: configuration is not loaded"
304-
):
300+
with pytest.raises(LogicError, match="logic error: configuration is not loaded"):
305301
cfg.service_configuration # pylint: disable=pointless-statement
306302

307303

308304
def test_llama_stack_configuration_not_loaded():
309305
"""Test that accessing llama_stack_configuration before loading raises an error."""
310306
cfg = AppConfig()
311-
with pytest.raises(
312-
AssertionError, match="logic error: configuration is not loaded"
313-
):
307+
with pytest.raises(LogicError, match="logic error: configuration is not loaded"):
314308
cfg.llama_stack_configuration # pylint: disable=pointless-statement
315309

316310

317311
def test_user_data_collection_configuration_not_loaded():
318312
"""Test that accessing user_data_collection_configuration before loading raises an error."""
319313
cfg = AppConfig()
320-
with pytest.raises(
321-
AssertionError, match="logic error: configuration is not loaded"
322-
):
314+
with pytest.raises(LogicError, match="logic error: configuration is not loaded"):
323315
cfg.user_data_collection_configuration # pylint: disable=pointless-statement
324316

325317

326318
def test_mcp_servers_not_loaded():
327319
"""Test that accessing mcp_servers before loading raises an error."""
328320
cfg = AppConfig()
329-
with pytest.raises(
330-
AssertionError, match="logic error: configuration is not loaded"
331-
):
321+
with pytest.raises(LogicError, match="logic error: configuration is not loaded"):
332322
cfg.mcp_servers # pylint: disable=pointless-statement
333323

334324

335325
def test_authentication_configuration_not_loaded():
336326
"""Test that accessing authentication_configuration before loading raises an error."""
337327
cfg = AppConfig()
338-
with pytest.raises(
339-
AssertionError, match="logic error: configuration is not loaded"
340-
):
328+
with pytest.raises(LogicError, match="logic error: configuration is not loaded"):
341329
cfg.authentication_configuration # pylint: disable=pointless-statement
342330

343331

344332
def test_customization_not_loaded():
345333
"""Test that accessing customization before loading raises an error."""
346334
cfg = AppConfig()
347-
with pytest.raises(
348-
AssertionError, match="logic error: configuration is not loaded"
349-
):
335+
with pytest.raises(LogicError, match="logic error: configuration is not loaded"):
350336
cfg.customization # pylint: disable=pointless-statement
351337

352338

0 commit comments

Comments
 (0)