def test_clean_positions_removes_self(self, m_pi): """Remove self from positioning if specified.""" p1 = Index() p2 = Index() p3 = Index() p1.position = 1 p2.position = 5 p3.position = 9 m_pi.return_value = [p1, p2, p3] p1.clean_positions(remove_self=True) assert p2.position == 1 assert p3.position == 2
def test_clean_positions_removes_gaps(self, m_pi): """Remove gaps in position when cleaning.""" p1 = Index() p2 = Index() p3 = Index() p1.position = 1 p2.position = 5 p3.position = 9 m_pi.return_value = [p1, p2, p3] p1.clean_positions() assert p1.position == 1 assert p2.position == 2 assert p3.position == 3
def test_clean_positions_sets_nulls(self, m_pi): """Set positions for objects with no position set.""" p1 = Index() p2 = Index() p3 = Index() p4 = Index() p1.position = 1 p2.position = None p3.position = 2 p4.position = None m_pi.return_value = [p1, p2, p3, p4] p1.clean_positions() assert p1.position == 1 assert p3.position == 2 assert p2.position == 3 assert p4.position == 4