Skip to content

Commit bafbd20

Browse files
committed
fixed all failing tests
1 parent b421471 commit bafbd20

3 files changed

Lines changed: 20 additions & 24 deletions

File tree

state-manager/app/models/db/graph_template_model.py

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
import base64
2-
from collections import deque
3-
import copy
42
import time
53
import asyncio
64

@@ -24,7 +22,7 @@ class GraphTemplate(BaseDatabaseModel):
2422
secrets: Dict[str, str] = Field(default_factory=dict, description="Secrets of the graph")
2523

2624
_node_by_identifier: Dict[str, NodeTemplate] | None = PrivateAttr(default=None)
27-
_parents_by_identifier: Dict[str, set[str]] | None = PrivateAttr(default=None)
25+
_parents_by_identifier: Dict[str, set[str]] | None = PrivateAttr(default=None) # type: ignore
2826
_root_node: NodeTemplate | None = PrivateAttr(default=None)
2927

3028
class Settings:
@@ -186,7 +184,23 @@ def _validate_secret_value(cls, secret_value: str) -> None:
186184
raise ValueError("Decoded value is too short to contain valid nonce")
187185
except Exception:
188186
raise ValueError("Value is not valid URL-safe base64 encoded")
189-
187+
188+
@model_validator(mode='after')
189+
def validate_unites_identifiers_exist(self) -> Self:
190+
errors = []
191+
identifiers = set()
192+
for node in self.nodes:
193+
identifiers.add(node.identifier)
194+
for node in self.nodes:
195+
if node.unites is not None:
196+
if node.unites.identifier not in identifiers:
197+
errors.append(f"Node {node.identifier} has an unites target {node.unites.identifier} that does not exist")
198+
if node.unites.identifier == node.identifier:
199+
errors.append(f"Node {node.identifier} has an unites target {node.unites.identifier} that is the same as the node itself")
200+
if errors:
201+
raise ValueError("\n".join(errors))
202+
return self
203+
190204
@model_validator(mode='after')
191205
def validate_graph_is_connected(self) -> Self:
192206
errors = []
@@ -210,22 +224,6 @@ def validate_graph_is_acyclic(self) -> Self:
210224
raise ValueError("\n".join(errors))
211225
return self
212226

213-
@model_validator(mode='after')
214-
def verify_unites_identifiers_exist(self) -> Self:
215-
errors = []
216-
identifiers = set()
217-
for node in self.nodes:
218-
identifiers.add(node.identifier)
219-
for node in self.nodes:
220-
if node.unites is not None:
221-
if node.unites.identifier not in identifiers:
222-
errors.append(f"Node {node.identifier} has a unit {node.unites.identifier} that does not exist")
223-
if node.unites.identifier == node.identifier:
224-
errors.append(f"Node {node.identifier} has a unit {node.unites.identifier} that is the same as the node itself")
225-
if errors:
226-
raise ValueError("\n".join(errors))
227-
return self
228-
229227
@model_validator(mode='after')
230228
def verify_input_dependencies(self) -> Self:
231229
errors = []

state-manager/tests/unit/config/test_cors.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import pytest
2-
from unittest.mock import patch, MagicMock
1+
from unittest.mock import patch
32

43
from app.config.cors import get_cors_config, get_cors_origins
54

state-manager/tests/unit/controller/test_get_graph_structure.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@
44
from bson import ObjectId
55

66
from app.controller.get_graph_structure import get_graph_structure
7-
from app.models.db.state import State
87
from app.models.state_status_enum import StateStatusEnum
9-
from app.models.graph_structure_models import GraphStructureResponse, GraphNode, GraphEdge
8+
from app.models.graph_structure_models import GraphStructureResponse
109

1110

1211
class TestGetGraphStructure:

0 commit comments

Comments
 (0)