(locked_element)
| 1016 | |
| 1017 | @pytest.mark.parametrize('locked_element', ['x0', 'y0', 'x1', 'y1']) |
| 1018 | def test_lockable_bbox(locked_element): |
| 1019 | other_elements = ['x0', 'y0', 'x1', 'y1'] |
| 1020 | other_elements.remove(locked_element) |
| 1021 | |
| 1022 | orig = mtransforms.Bbox.unit() |
| 1023 | locked = mtransforms.LockableBbox(orig, **{locked_element: 2}) |
| 1024 | |
| 1025 | # LockableBbox should keep its locked element as specified in __init__. |
| 1026 | assert getattr(locked, locked_element) == 2 |
| 1027 | assert getattr(locked, 'locked_' + locked_element) == 2 |
| 1028 | for elem in other_elements: |
| 1029 | assert getattr(locked, elem) == getattr(orig, elem) |
| 1030 | |
| 1031 | # Changing underlying Bbox should update everything but locked element. |
| 1032 | orig.set_points(orig.get_points() + 10) |
| 1033 | assert getattr(locked, locked_element) == 2 |
| 1034 | assert getattr(locked, 'locked_' + locked_element) == 2 |
| 1035 | for elem in other_elements: |
| 1036 | assert getattr(locked, elem) == getattr(orig, elem) |
| 1037 | |
| 1038 | # Unlocking element should revert values back to the underlying Bbox. |
| 1039 | setattr(locked, 'locked_' + locked_element, None) |
| 1040 | assert getattr(locked, 'locked_' + locked_element) is None |
| 1041 | assert np.all(orig.get_points() == locked.get_points()) |
| 1042 | |
| 1043 | # Relocking an element should change its value, but not others. |
| 1044 | setattr(locked, 'locked_' + locked_element, 3) |
| 1045 | assert getattr(locked, locked_element) == 3 |
| 1046 | assert getattr(locked, 'locked_' + locked_element) == 3 |
| 1047 | for elem in other_elements: |
| 1048 | assert getattr(locked, elem) == getattr(orig, elem) |
| 1049 | |
| 1050 | |
| 1051 | def test_transformwrapper(): |
nothing calls this directly
no test coverage detected
searching dependent graphs…