Add label api and test
This commit is contained in:
@@ -2488,6 +2488,121 @@ class TestApi:
|
||||
self.leave(p)
|
||||
|
||||
|
||||
# 26 label
|
||||
|
||||
|
||||
def test_label(self):
|
||||
p = 'test_label'
|
||||
self.enter(p)
|
||||
|
||||
l = get_label(p, 0.0, 0.0)
|
||||
assert l['x'] == 0.0
|
||||
assert l['y'] == 0.0
|
||||
assert l['label'] == None
|
||||
assert l['node'] == None
|
||||
|
||||
add_junction(p, ChangeSet({'id': 'j0', 'x': 0.0, 'y': 10.0, 'elevation': 20.0}))
|
||||
add_label(p, ChangeSet({'x': 0.0, 'y': 0.0, 'label': 'x', 'node': 'j0'}))
|
||||
l = get_label(p, 0.0, 0.0)
|
||||
assert l['x'] == 0.0
|
||||
assert l['y'] == 0.0
|
||||
assert l['label'] == 'x'
|
||||
assert l['node'] == 'j0'
|
||||
|
||||
add_junction(p, ChangeSet({'id': 'j1', 'x': 1.0, 'y': 20.0, 'elevation': 20.0}))
|
||||
set_label(p, ChangeSet({'x': 0.0, 'y': 0.0, 'label': 'xxx', 'node': 'j1'}))
|
||||
l = get_label(p, 0.0, 0.0)
|
||||
assert l['x'] == 0.0
|
||||
assert l['y'] == 0.0
|
||||
assert l['label'] == 'xxx'
|
||||
assert l['node'] == 'j1'
|
||||
|
||||
delete_label(p, ChangeSet({'x': 0.0, 'y': 0.0}))
|
||||
l = get_label(p, 0.0, 0.0)
|
||||
assert l['x'] == 0.0
|
||||
assert l['y'] == 0.0
|
||||
assert l['label'] == None
|
||||
assert l['node'] == None
|
||||
|
||||
self.leave(p)
|
||||
|
||||
|
||||
def test_label_op(self):
|
||||
p = 'test_label_op'
|
||||
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': 1.0, 'y': 20.0, 'elevation': 20.0}))
|
||||
|
||||
cs = add_label(p, ChangeSet({'x': 0.0, 'y': 0.0, 'label': 'x', 'node': 'j0'})).operations[0]
|
||||
assert cs['operation'] == API_ADD
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
assert cs['label'] == 'x'
|
||||
assert cs['node'] == 'j0'
|
||||
|
||||
cs = execute_undo(p).operations[0]
|
||||
assert cs['operation'] == API_DELETE
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
|
||||
cs = execute_redo(p).operations[0]
|
||||
assert cs['operation'] == API_ADD
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
assert cs['label'] == 'x'
|
||||
assert cs['node'] == 'j0'
|
||||
|
||||
cs = set_label(p, ChangeSet({'x': 0.0, 'y': 0.0, 'label': 'xxx', 'node': 'j1'})).operations[0]
|
||||
assert cs['operation'] == API_UPDATE
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
assert cs['label'] == 'xxx'
|
||||
assert cs['node'] == 'j1'
|
||||
|
||||
cs = execute_undo(p).operations[0]
|
||||
assert cs['operation'] == API_UPDATE
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
assert cs['label'] == 'x'
|
||||
assert cs['node'] == 'j0'
|
||||
|
||||
cs = execute_redo(p).operations[0]
|
||||
assert cs['operation'] == API_UPDATE
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
assert cs['label'] == 'xxx'
|
||||
assert cs['node'] == 'j1'
|
||||
|
||||
cs = delete_label(p, ChangeSet({'x': 0.0, 'y': 0.0})).operations[0]
|
||||
assert cs['operation'] == API_DELETE
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
|
||||
cs = execute_undo(p).operations[0]
|
||||
assert cs['operation'] == API_ADD
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
assert cs['label'] == 'xxx'
|
||||
assert cs['node'] == 'j1'
|
||||
|
||||
cs = execute_redo(p).operations[0]
|
||||
assert cs['operation'] == API_DELETE
|
||||
assert cs['type'] == 'label'
|
||||
assert cs['x'] == 0.0
|
||||
assert cs['y'] == 0.0
|
||||
|
||||
self.leave(p)
|
||||
|
||||
|
||||
# 27 backdrop
|
||||
|
||||
|
||||
@@ -2525,7 +2640,5 @@ class TestApi:
|
||||
self.leave(p)
|
||||
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
pytest.main()
|
||||
|
||||
Reference in New Issue
Block a user