Test curve cascade deletion

This commit is contained in:
WQY\qiong
2023-02-04 16:26:05 +08:00
parent 719e63e572
commit 73ec2faa97

View File

@@ -2153,6 +2153,42 @@ class TestApi:
self.leave(p)
def test_curve_del(self):
p = 'test_curve_del'
self.enter(p)
add_curve(p, ChangeSet({'id' : 'c0', 'c_type' : CURVE_TYPE_PUMP, 'coords': [{'x': 1.0, 'y': 2.0}, {'x': 2.0, 'y': 1.0}]}))
add_tank(p, ChangeSet({'id': 't0', 'x': 0.0, 'y': 10.0, 'elevation': 20.0, 'init_level': 1.0, 'min_level': 0.0, 'max_level': 2.0, 'diameter': 10.0, 'min_vol': 100.0, 'vol_curve': 'c0', 'overflow': OVERFLOW_NO}))
add_junction(p, ChangeSet({'id': 'j0', 'x': 0.0, 'y': 10.0, 'elevation': 20.0, 'pattern': None}))
add_reservoir(p, ChangeSet({'id': 'r0', 'x': 0.0, 'y': 10.0, 'head': 20.0, 'pattern': None}))
add_pump(p, ChangeSet({'id': 'p0', 'node1': 'j0', 'node2': 'r0', 'head': 'c0'}))
set_pump_energy(p, ChangeSet({'pump' : 'p0', 'effic': 'c0'}))
assert is_curve(p, 'c0')
assert get_tank(p, 't0')['vol_curve'] == 'c0'
assert get_pump(p, 'p0')['head'] == 'c0'
assert get_pump_energy(p, 'p0')['effic'] == 'c0'
delete_curve(p, ChangeSet({'id': 'c0'}))
assert is_curve(p, 'c0') == False
assert get_tank(p, 't0')['vol_curve'] == None
assert get_pump(p, 'p0')['head'] == None
assert get_pump_energy(p, 'p0')['effic'] == None
execute_undo(p)
assert is_curve(p, 'c0')
assert get_tank(p, 't0')['vol_curve'] == 'c0'
assert get_pump(p, 'p0')['head'] == 'c0'
assert get_pump_energy(p, 'p0')['effic'] == 'c0'
execute_redo(p)
assert is_curve(p, 'c0') == False
assert get_tank(p, 't0')['vol_curve'] == None
assert get_pump(p, 'p0')['head'] == None
assert get_pump_energy(p, 'p0')['effic'] == None
self.leave(p)
# 13 control