コード例 #1
0
 def test_set_position_insert_before_first(self, m_pi):
     """Insert at first position if given number below 1."""
     p1 = Index()
     p2 = Index()
     p3 = Index()
     p1.position = 1
     p2.position = 2
     p3.position = 3
     m_pi.return_value = [p1, p2, p3]
     ptest = Index()
     ptest.position = None
     ptest.set_position(0)
     assert ptest.position == 1
     assert p1.position == 2
     assert p2.position == 3
     assert p3.position == 4
     m_pi.return_value = [p1, p2, p3, ptest]
     ptest2 = Index()
     ptest2.position = None
     ptest2.set_position(-1)
     assert ptest2.position == 1
     assert ptest.position == 2
     assert p1.position == 3
     assert p2.position == 4
     assert p3.position == 5
コード例 #2
0
 def test_set_position_insert_after_last(self, m_pi):
     """Insert after last position if given arbitrarily larger position."""
     p1 = Index()
     p2 = Index()
     p3 = Index()
     p1.position = 1
     p2.position = 2
     p3.position = 3
     m_pi.return_value = [p1, p2, p3]
     ptest = Index()
     ptest.position = None
     ptest.set_position(42)
     assert p1.position == 1
     assert p2.position == 2
     assert p3.position == 3
     assert ptest.position == 4
コード例 #3
0
 def test_set_position_insert_first(self, m_pi):
     """Bump others up when inserting to start position."""
     p1 = Index()
     p2 = Index()
     p3 = Index()
     p1.position = 1
     p2.position = 2
     p3.position = 3
     m_pi.return_value = [p1, p2, p3]
     ptest = Index()
     ptest.position = None
     ptest.set_position(1)
     assert ptest.position == 1
     assert p1.position == 2
     assert p2.position == 3
     assert p3.position == 4
コード例 #4
0
 def test_set_position_inserts(self, m_pi):
     """Setting a position btwn first and last should insert there."""
     p1 = Index()
     p2 = Index()
     p3 = Index()
     p1.position = 1
     p2.position = 2
     p3.position = 3
     m_pi.return_value = [p1, p2, p3]
     ptest = Index()
     ptest.position = None
     ptest.set_position(2)
     assert p1.position == 1
     assert ptest.position == 2
     assert p2.position == 3
     assert p3.position == 4
コード例 #5
0
 def test_set_position_empty_rows(self, m_ap, m_pi):
     """Auto-position if no other positioned objects exist."""
     m_pi.return_value = []
     ptest = Index()
     ptest.set_position(42)
     assert m_ap.called