Apply changes from code review.

This commit is contained in:
Marek Wolan
2023-08-09 15:55:28 +01:00
parent f198a8b94d
commit 34ff9abd7a
3 changed files with 6 additions and 5 deletions

View File

@@ -127,6 +127,7 @@ class SimComponent(BaseModel):
"""Extension of pydantic BaseModel with additional methods that must be defined by all classes in the simulator."""
model_config = ConfigDict(arbitrary_types_allowed=True, extra=Extra.allow)
"""Configure pydantic to allow arbitrary types and to let the instance have attributes not present in model."""
uuid: str
"""The component UUID."""

View File

@@ -55,9 +55,9 @@ class Account(SimComponent):
self.enabled = False
def log_on(self) -> None:
"""TODO."""
"""TODO. Once the accounts are integrated with nodes, populate this accordingly."""
self.num_logons += 1
def log_off(self) -> None:
"""TODO."""
"""TODO. Once the accounts are integrated with nodes, populate this accordingly."""
self.num_logoffs += 1

View File

@@ -3,14 +3,14 @@ from primaite.simulator.domain.account import Account, AccountType
def test_account_serialise():
"""Test that an account can be serialised."""
acct = Account(username="Jake", password="JakePass1!", account_type=AccountType.USER)
"""Test that an account can be serialised. If pydantic throws error then this test fails."""
acct = Account(username="Jake", password="JakePass1!", account_type=AccountType.user)
serialised = acct.model_dump_json()
print(serialised)
def test_account_deserialise():
"""Test that an account can be deserialised."""
"""Test that an account can be deserialised. The test fails if pydantic throws an error."""
acct_json = (
'{"uuid":"dfb2bcaa-d3a1-48fd-af3f-c943354622b4","num_logons":0,"num_logoffs":0,"num_group_changes":0,'
'"username":"Jake","password":"JakePass1!","account_type":2,"status":2,"action_manager":null}'