Network: Fix tests.

scenarios
Pierre-Antoine Rouby 2024-09-20 19:20:00 +02:00
parent 48c389a27c
commit cab1bceae8
7 changed files with 29 additions and 34 deletions

View File

@ -16,16 +16,16 @@
# -*- coding: utf-8 -*-
from Model.Tools.PamhyrDB import PamhyrID
from Model.Tools.PamhyrDB import SQLSubModel
from Model.Network.Node import Node
class Edge(PamhyrID):
def __init__(self, id: int, name: str,
class Edge(SQLSubModel):
def __init__(self, id: int = -1, name: str = "",
node1: Node = None,
node2: Node = None,
status=None, **kwargs):
super(Edge, self).__init__(id=id, status=status, **kwargs)
**kwargs):
super(Edge, self).__init__(id=id, **kwargs)
self._name = name
self.node1 = node1
@ -77,9 +77,6 @@ class Edge(PamhyrID):
def is_enable(self):
return self._enable
def is_deleted(self):
return False
def enable(self, enable=True):
self._enable = enable
self.modified()

View File

@ -18,11 +18,13 @@
from functools import reduce
from Model.Tools.PamhyrDB import SQLSubModel
from Model.Network.Node import Node
from Model.Network.Edge import Edge
class Graph(object):
class Graph(SQLSubModel):
def __init__(self, **kwargs):
super(Graph, self).__init__(**kwargs)
@ -164,8 +166,7 @@ class Graph(object):
def _create_edge(self, n1: Node, n2: Node):
edge = self._edge_ctor(
-1,
"", n1, n2,
node1=n1, node2=n2,
status=self._status
)
return edge

View File

@ -16,17 +16,15 @@
# -*- coding: utf-8 -*-
from Model.Tools.PamhyrDB import PamhyrID
from Model.Tools.PamhyrDB import SQLSubModel
from Model.Network.Point import Point
class Node(PamhyrID):
def __init__(self, id: int, name: str,
class Node(SQLSubModel):
def __init__(self, id: int = -1, name: str = "",
x: float = 0.0, y: float = 0.0,
status=None, **kwargs):
super(Node, self).__init__(id)
self._status = status
**kwargs):
super(Node, self).__init__(id=id, **kwargs)
if name == "":
self._name = f"Node #{self.pamhyr_id}"
@ -53,10 +51,7 @@ class Node(PamhyrID):
elif key == "id":
self.pamhyr_id = value
self._status.modified()
def is_deleted(self):
return False
self.modified()
@property
def name(self):
@ -73,4 +68,4 @@ class Node(PamhyrID):
def setPos(self, x, y):
self.pos.x = x
self.pos.y = y
self._status.modified()
self.modified()

View File

@ -60,6 +60,9 @@ class GraphTestCase(unittest.TestCase):
e0 = g.add_edge(n0, n1)
self.assertEqual(g.nodes_counts(), 2)
self.assertEqual(g.edges_counts(), 1)
g.remove_edge(e0)
self.assertEqual(g.nodes_counts(), 2)

View File

@ -51,14 +51,14 @@ from Solver.Solvers import solver_type_list
logger = logging.getLogger()
class RiverNode(Node, SQLSubModel):
class RiverNode(Node):
_sub_classes = []
def __init__(self, id: int = -1, name: str = "",
x: float = 0.0, y: float = 0.0,
status=None, owner_scenario=-1):
super(RiverNode, self).__init__(
id, name, x, y,
id=id, name=name, x=x, y=y,
status=status,
owner_scenario=owner_scenario
)
@ -147,7 +147,6 @@ class RiverNode(Node, SQLSubModel):
y = next(it)
owner_scenario = next(it)
node = cls(
id=pid,
name=name, x=x, y=y,
@ -192,7 +191,7 @@ class RiverNode(Node, SQLSubModel):
self._locker = locker
class RiverReach(Edge, SQLSubModel):
class RiverReach(Edge):
_sub_classes = [
Reach,
FrictionList,
@ -203,8 +202,8 @@ class RiverReach(Edge, SQLSubModel):
node2: RiverNode = None,
status=None, owner_scenario=-1):
super(RiverReach, self).__init__(
id, name,
node1, node2,
id=id, name=name,
node1=node1, node2=node2,
status=status,
owner_scenario=owner_scenario
)
@ -389,7 +388,7 @@ class RiverReach(Edge, SQLSubModel):
return self._frictions
class River(Graph, SQLSubModel):
class River(Graph):
_sub_classes = [
StricklersList,
SedimentLayerList,

View File

@ -158,8 +158,8 @@ class SQLSubModel(PamhyrID):
_sub_classes = []
def __init__(self, id: int = -1, status=None,
owner_scenario=-1):
super(SQLSubModel, self).__init__(id)
owner_scenario=-1, **kwargs):
super(SQLSubModel, self).__init__(id=id, **kwargs)
self._status = status

View File

@ -26,8 +26,8 @@ logger = logging.getLogger()
class PamhyrID(object):
_pamhyr_id_cnt = 0
def __init__(self, id: int = -1):
super(PamhyrID, self).__init__()
def __init__(self, id: int = -1, **kwargs):
super(PamhyrID, self).__init__(**kwargs)
self._pamhyr_id = self.get_new_pamhyr_id(id)