def test_hash_value_update(self): """tests that the hash_value of the shape is not updated until a new solid has been created""" test_shape = ExtrudeMixedShape( points=[(0, 0, "straight"), (0, 20, "spline"), (20, 20, "spline"), ], distance=20 ) test_shape.solid assert test_shape.hash_value is not None initial_hash_value = test_shape.hash_value test_shape.distance = 30 assert test_shape.hash_value == initial_hash_value test_shape.solid assert test_shape.hash_value != initial_hash_value
def test_conditional_solid_reconstruction(self): """tests that a new cadquery solid with a new unique hash is constructed when .solid is called again after changes have been made to the shape""" test_shape = ExtrudeMixedShape( points=[(0, 0, "straight"), (0, 20, "spline"), (20, 20, "spline"), ], distance=20 ) assert test_shape.solid is not None assert test_shape.hash_value is not None initial_hash_value = test_shape.hash_value test_shape.distance = 30 assert test_shape.solid is not None assert test_shape.hash_value is not None assert initial_hash_value != test_shape.hash_value