Test valve cascade deletion

This commit is contained in:
WQY\qiong
2023-02-04 15:08:27 +08:00
parent 685c8a3a33
commit 6e6fc67677

View File

@@ -1526,6 +1526,46 @@ class TestApi:
self.leave(p)
def test_valve_del(self):
p = 'test_valve_del'
self.enter(p)
add_junction(p, ChangeSet({'id': 'j0', 'x': 0.0, 'y': 10.0, 'elevation': 20.0}))
add_junction(p, ChangeSet({'id': 'j1', 'x': 0.0, 'y': 10.0, 'elevation': 20.0}))
add_valve(p, ChangeSet({'id': 'v0', 'node1': 'j0', 'node2': 'j1', 'diameter': 10.0, 'v_type': VALVES_TYPE_FCV, 'setting': 0.1, 'minor_loss': 0.5 }))
set_tag(p, ChangeSet({'t_type': TAG_TYPE_LINK, 'id': 'v0', 'tag': 'v0t' }))
set_status(p, ChangeSet({'link': 'v0', 'status': LINK_STATUS_OPEN, 'setting': 10.0}))
set_vertex(p, ChangeSet({'link' : 'v0', 'coords': [{'x': 1.0, 'y': 2.0}, {'x': 2.0, 'y': 1.0}]}))
assert is_valve(p, 'v0')
assert get_tag(p, TAG_TYPE_LINK, 'v0')['tag'] == 'v0t'
assert get_status(p, 'v0')['status'] == LINK_STATUS_OPEN
assert get_status(p, 'v0')['setting'] == 10.0
assert get_vertex(p, 'v0')['coords'] == [{'x': 1.0, 'y': 2.0}, {'x': 2.0, 'y': 1.0}]
delete_valve(p, ChangeSet({'id': 'v0'}))
assert is_valve(p, 'v0') == False
assert get_tag(p, TAG_TYPE_LINK, 'v0')['tag'] == None
assert get_status(p, 'v0')['status'] == None
assert get_status(p, 'v0')['setting'] == None
assert get_vertex(p, 'v0')['coords'] == []
execute_undo(p)
assert is_valve(p, 'v0')
assert get_tag(p, TAG_TYPE_LINK, 'v0')['tag'] == 'v0t'
assert get_status(p, 'v0')['status'] == LINK_STATUS_OPEN
assert get_status(p, 'v0')['setting'] == 10.0
assert get_vertex(p, 'v0')['coords'] == [{'x': 1.0, 'y': 2.0}, {'x': 2.0, 'y': 1.0}]
execute_redo(p)
assert is_valve(p, 'v0') == False
assert get_tag(p, TAG_TYPE_LINK, 'v0')['tag'] == None
assert get_status(p, 'v0')['status'] == None
assert get_status(p, 'v0')['setting'] == None
assert get_vertex(p, 'v0')['coords'] == []
self.leave(p)
# 8 tag