def test_orthogonal_horizontal_undo(revert_undo, undo_fixture): """Test orthogonal line constraints bug (#107). """ canvas = Canvas() line = Line() canvas.add(line) assert not line.horizontal assert len(canvas.solver._constraints) == 0 segment = Segment(line, None) segment.split_segment(0) line.orthogonal = True assert 2 == len(canvas.solver._constraints) del undo_fixture[2][:] # Clear undo_list line.horizontal = True assert 2 == len(canvas.solver._constraints) undo_fixture[0]() # Call undo assert not line.horizontal assert 2 == len(canvas.solver._constraints) line.horizontal = True assert line.horizontal assert 2 == len(canvas.solver._constraints)
def test_orthogonal_line_undo(revert_undo, undo_fixture): """Test orthogonal line undo. """ canvas = Canvas() line = Line() canvas.add(line) segment = Segment(line, None) segment.split_segment(0) # Start with no orthogonal constraints assert len(canvas.solver._constraints) == 0 line.orthogonal = True # Check orthogonal constraints assert 2 == len(canvas.solver._constraints) assert 3 == len(line.handles()) undo_fixture[0]() # Call undo assert not line.orthogonal assert 0 == len(canvas.solver._constraints) assert 2 == len(line.handles())
def test_orthogonal_horizontal_undo(self): """Test orthogonal line constraints bug (#107) """ canvas = Canvas() line = Line() canvas.add(line) assert not line.horizontal assert len(canvas.solver._constraints) == 0 segment = Segment(line, None) segment.split_segment(0) line.orthogonal = True self.assertEqual(2, len(canvas.solver._constraints)) after_ortho = set(canvas.solver._constraints) del undo_list[:] line.horizontal = True self.assertEqual(2, len(canvas.solver._constraints)) undo() self.assertFalse(line.horizontal) self.assertEqual(2, len(canvas.solver._constraints)) line.horizontal = True self.assertTrue(line.horizontal) self.assertEqual(2, len(canvas.solver._constraints))
def test_orthogonal_horizontal_undo(self): """Test orthogonal line constraints bug (#107) """ canvas = Canvas() line = Line() canvas.add(line) assert not line.horizontal assert len(canvas.solver._constraints) == 0 segment = Segment(line, None) segment.split_segment(0) line.orthogonal = True self.assertEquals(2, len(canvas.solver._constraints)) after_ortho = set(canvas.solver._constraints) del undo_list[:] line.horizontal = True self.assertEquals(2, len(canvas.solver._constraints)) undo() self.assertFalse(line.horizontal) self.assertEquals(2, len(canvas.solver._constraints)) line.horizontal = True self.assertTrue(line.horizontal) self.assertEquals(2, len(canvas.solver._constraints))
def test_orthogonal_horizontal_undo(self): canvas = Canvas() line = Line() canvas.add(line) assert len(canvas.solver._constraints) == 0 line.orthogonal = True assert len(canvas.solver._constraints) == 2 after_ortho = set(canvas.solver._constraints) del undo_list[:] line.horizontal = True assert len(canvas.solver._constraints) == 2 undo() assert not line.horizontal assert len(canvas.solver._constraints) == 2, canvas.solver._constraints line.horizontal = True assert line.horizontal assert len(canvas.solver._constraints) == 2, canvas.solver._constraints
def test_orthogonal_line_split_segment(self): canvas = Canvas() line = Line() canvas.add(line) assert len(canvas.solver._constraints) == 0 line.orthogonal = True assert len(canvas.solver._constraints) == 2 after_ortho = set(canvas.solver._constraints) assert len(line.handles()) == 3 del undo_list[:] line.split_segment(0) assert len(canvas.solver._constraints) == 3 assert len(line.handles()) == 4 undo() assert len(canvas.solver._constraints) == 2 assert len(line.handles()) == 3 assert canvas.solver._constraints == after_ortho line.split_segment(0) assert len(canvas.solver._constraints) == 3 assert len(line.handles()) == 4 after_split = set(canvas.solver._constraints) del undo_list[:] line.merge_segment(0) assert len(canvas.solver._constraints) == 2 assert len(line.handles()) == 3 undo() assert len(canvas.solver._constraints) == 3 assert len(line.handles()) == 4 assert canvas.solver._constraints == after_split
def test_line_guide(self): c = Canvas() l = Line() c.add(l) l.handles().append(l._create_handle((20, 20))) l.handles().append(l._create_handle((30, 30))) l.handles().append(l._create_handle((40, 40))) l.orthogonal = True c.update_now() guides = list(Guide(l).horizontal()) self.assertEquals(2, len(guides)) self.assertEquals(10.0, guides[0]) self.assertEquals(40.0, guides[1]) guides = list(Guide(l).vertical()) self.assertEquals(2, len(guides)) self.assertEquals(00.0, guides[0]) self.assertEquals(20.0, guides[1])
def test_orthogonal_line_undo(self): """Test orthogonal line undo """ canvas = Canvas() line = Line() canvas.add(line) segment = Segment(line, None) segment.split_segment(0) # start with no orthogonal constraints assert len(canvas.solver._constraints) == 0 line.orthogonal = True # check orthogonal constraints self.assertEqual(2, len(canvas.solver._constraints)) self.assertEqual(3, len(line.handles())) undo() self.assertFalse(line.orthogonal) self.assertEqual(0, len(canvas.solver._constraints)) self.assertEqual(2, len(line.handles()))
def test_orthogonal_line_undo(self): """Test orthogonal line undo """ canvas = Canvas() line = Line() canvas.add(line) segment = Segment(line, None) segment.split_segment(0) # start with no orthogonal constraints assert len(canvas.solver._constraints) == 0 line.orthogonal = True # check orthogonal constraints self.assertEquals(2, len(canvas.solver._constraints)) self.assertEquals(3, len(line.handles())) undo() self.assertFalse(line.orthogonal) self.assertEquals(0, len(canvas.solver._constraints)) self.assertEquals(2, len(line.handles()))