示例#1
0
    def test_cut_cellrange_reference_to_partially_cut_cellrange_is_not_rewritten_even_if_its_not_obviously_overlapping(
            self):
        cut_region_left = 2
        cut_region_right = 3
        cut_region_top = 1
        cut_region_bottom = 2

        cell_range_topleft = "A2"
        cell_range_bottomright = "B3"

        result = rewrite_formula(
            "=%s:%s" % (cell_range_topleft, cell_range_bottomright), 2, 1,
            True, (cut_region_left, cut_region_top, cut_region_right,
                   cut_region_bottom))
        self.assertEquals(result, '=A2:B3')
    def test_cut_absolute_cellrange_reference_to_partially_cut_cellrange_is_not_rewritten_even_if_its_not_obviously_overlapping(self):
        cut_region_left = 2
        cut_region_right = 3
        cut_region_top = 1
        cut_region_bottom = 2

        cell_range_topleft = "$A$2"
        cell_range_bottomright = "$B$3"

        result = rewrite_formula(
            "=%s:%s" % (cell_range_topleft, cell_range_bottomright),
            2, 1,
            True,
            (cut_region_left, cut_region_top, cut_region_right, cut_region_bottom)
        )
        self.assertEquals(result, '=$A$2:$B$3')
 def test_cut_absolute_cellrange_reference_to_completely_cut_cellrange_is_rewritten(self):
     result = rewrite_formula(
         "=$A$2:$A$3", 2, 1, True, (1, 1, 1, 3)
     )
     self.assertEquals(result, '=$C$3:$C$4')
示例#4
0
 def test_absolute_copied_cell_reference_to_uncopied_cell_is_not_rewritten(
         self):
     result = rewrite_formula("=$B$3", 2, 1, False, (1, 1, 1, 1))
     self.assertEquals(result, '=$B$3')
 def test_copied_cell_reference_that_moves_off_grid_marked_invalid(self):
     result = rewrite_formula(
         "=A1", 1, -1, False, (1, 2, 1, 2)
     )
     self.assertEquals(result, '=#Invalid!')
示例#6
0
 def test_copied_cellrange_reference_to_uncopied_cellrange_is_rewritten(
         self):
     result = rewrite_formula("=A2:A3", 2, 1, False, (1, 1, 1, 1))
     self.assertEquals(result, '=C3:C4')
 def test_cut_cell_reference_to_uncut_cell_is_not_rewritten(self):
     result = rewrite_formula(
         "=B3", 2, 1, True, (1, 1, 1, 1)
     )
     self.assertEquals(result, '=B3')
 def test_copied_cell_reference_to_uncopied_cell_is_rewritten(self):
     result = rewrite_formula(
         "=B3", 2, 1, False, (1, 1, 1, 1)
     )
     self.assertEquals(result, '=D4')
 def test_copied_absolute_cellrange_reference_to_partially_copied_cellrange_is_not_rewritten(self):
     result = rewrite_formula(
         "=$A$2:$A$3", 2, 1, False, (1, 1, 1, 2)
     )
     self.assertEquals(result, '=$A$2:$A$3')
 def test_safely_handle_none(self):
     self.assertIsNone( rewrite_formula(None, 3, 5, False, (1, 2, 3, 4)) )
示例#11
0
 def test_copied_cell_reference_to_uncopied_cell_is_rewritten(self):
     result = rewrite_formula("=B3", 2, 1, False, (1, 1, 1, 1))
     self.assertEquals(result, '=D4')
 def test_dont_rewrite_constants(self):
     result = rewrite_formula(
         "B3", 3, 5, False, (1, 2, 3, 4)
     )
     self.assertEquals(result, 'B3')
示例#13
0
 def test_absolute_cut_cell_reference_to_cut_cell_is_rewritten(self):
     result = rewrite_formula("=$A$2", 2, 1, True, (1, 1, 1, 2))
     self.assertEquals(result, '=$C$3')
示例#14
0
 def test_cut_cell_reference_to_uncut_cell_is_not_rewritten(self):
     result = rewrite_formula("=B3", 2, 1, True, (1, 1, 1, 1))
     self.assertEquals(result, '=B3')
示例#15
0
 def test_safely_handle_nonsense(self):
     unparseable_nonsense = '=!:booA1:A2'
     self.assertEquals(
         rewrite_formula(unparseable_nonsense, 3, 5, False, (1, 2, 3, 4)),
         unparseable_nonsense)
示例#16
0
 def test_safely_handle_none(self):
     self.assertIsNone(rewrite_formula(None, 3, 5, False, (1, 2, 3, 4)))
示例#17
0
 def test_dont_rewrite_constants(self):
     result = rewrite_formula("B3", 3, 5, False, (1, 2, 3, 4))
     self.assertEquals(result, 'B3')
 def test_cut_absolute_cellrange_reference_to_uncut_cellrange_is_not_rewritten(self):
     result = rewrite_formula(
         "=$A$2:$A$3", 2, 1, True, (1, 1, 1, 1)
     )
     self.assertEquals(result, '=$A$2:$A$3')
示例#19
0
 def test_copied_cell_reference_that_moves_off_grid_marked_invalid(self):
     result = rewrite_formula("=A1", 1, -1, False, (1, 2, 1, 2))
     self.assertEquals(result, '=#Invalid!')
 def test_copied_cellrange_reference_to_uncopied_cellrange_is_rewritten(self):
     result = rewrite_formula(
         "=A2:A3", 2, 1, False, (1, 1, 1, 1)
     )
     self.assertEquals(result, '=C3:C4')
示例#21
0
 def test_cut_cellrange_reference_to_completely_cut_cellrange_is_rewritten(
         self):
     result = rewrite_formula("=A2:A3", 2, 1, True, (1, 1, 1, 3))
     self.assertEquals(result, '=C3:C4')
 def test_safely_handle_nonsense(self):
     unparseable_nonsense = '=!:booA1:A2'
     self.assertEquals(
             rewrite_formula(unparseable_nonsense, 3, 5, False, (1, 2, 3, 4)),
             unparseable_nonsense
     )
示例#23
0
 def test_cut_absolute_cellrange_reference_to_completely_cut_cellrange_is_rewritten(
         self):
     result = rewrite_formula("=$A$2:$A$3", 2, 1, True, (1, 1, 1, 3))
     self.assertEquals(result, '=$C$3:$C$4')
 def test_absolute_cut_cell_reference_to_cut_cell_is_rewritten(self):
     result = rewrite_formula(
         "=$A$2", 2, 1, True, (1, 1, 1, 2)
     )
     self.assertEquals(result, '=$C$3')
示例#25
0
 def test_cut_absolute_cellrange_reference_to_partially_cut_cellrange_is_not_rewritten(
         self):
     result = rewrite_formula("=$A$2:$A$3", 2, 1, True, (1, 1, 1, 2))
     self.assertEquals(result, '=$A$2:$A$3')
 def test_absolute_copied_cell_reference_to_uncopied_cell_is_not_rewritten(self):
     result = rewrite_formula(
         "=$B$3", 2, 1, False, (1, 1, 1, 1)
     )
     self.assertEquals(result, '=$B$3')
 def test_cut_cellrange_reference_to_partially_cut_cellrange_is_not_rewritten(self):
     result = rewrite_formula(
         "=A2:A3", 2, 1, True, (1, 1, 1, 2)
     )
     self.assertEquals(result, '=A2:A3')
 def test_cut_cellrange_reference_to_completely_cut_cellrange_is_rewritten(self):
     result = rewrite_formula(
         "=A2:A3", 2, 1, True, (1, 1, 1, 3)
     )
     self.assertEquals(result, '=C3:C4')
示例#29
0
 def test_copied_absolute_cellrange_reference_to_completely_copied_cellrange_is_not_rewritten(
         self):
     result = rewrite_formula("=$A$2:$A$3", 2, 1, False, (1, 1, 1, 3))
     self.assertEquals(result, '=$A$2:$A$3')