assertEquals(15, row7.getCell(4).getNumericCellValue(), 0.0000000000000001); //E7: 15
assertEquals(16, row7.getCell(5).getNumericCellValue(), 0.0000000000000001); //F7: 16
//A1: =SUM(C4:F7);
Cell cellA1 = row1.getCell(0);
CellValue valueA1 = _evaluator.evaluate(cellA1);
assertEquals(136, valueA1.getNumberValue(), 0.0000000000000001);
assertEquals(Cell.CELL_TYPE_NUMERIC, valueA1.getCellType());
testToFormulaString(cellA1, "SUM(C4:F7)");
//move left from B3:G8 to C2:H7
BookHelper.moveRange(sheet1, 2, 1, 7, 6, -1, -1);
_evaluator.notifySetFormula(cellA1);
Row row3 = sheet1.getRow(2);
assertNull(row3.getCell(5));
assertEquals(1, row3.getCell(1).getNumericCellValue(), 0.0000000000000001); //D4: 1
assertEquals(2, row3.getCell(2).getNumericCellValue(), 0.0000000000000001); //E4: 2
assertEquals(3, row3.getCell(3).getNumericCellValue(), 0.0000000000000001); //F4: 3
assertEquals(4, row3.getCell(4).getNumericCellValue(), 0.0000000000000001); //G4: 4
assertNull(row6.getCell(5));
assertEquals(5, row4.getCell(1).getNumericCellValue(), 0.0000000000000001); //D4: 5
assertEquals(6, row4.getCell(2).getNumericCellValue(), 0.0000000000000001); //E4: 6
assertEquals(7, row4.getCell(3).getNumericCellValue(), 0.0000000000000001); //F4: 7
assertEquals(8, row4.getCell(4).getNumericCellValue(), 0.0000000000000001); //G4: 8
assertNull(row7.getCell(5));
assertEquals(9, row5.getCell(1).getNumericCellValue(), 0.0000000000000001); //D4: 9
assertEquals(10, row5.getCell(2).getNumericCellValue(), 0.0000000000000001); //E4: 10
assertEquals(11, row5.getCell(3).getNumericCellValue(), 0.0000000000000001); //F4: 11
assertEquals(12, row5.getCell(4).getNumericCellValue(), 0.0000000000000001); //G4: 12
assertNull(row6.getCell(5));
assertEquals(13, row6.getCell(1).getNumericCellValue(), 0.0000000000000001); //D4: 13
assertEquals(14, row6.getCell(2).getNumericCellValue(), 0.0000000000000001); //E4: 14
assertEquals(15, row6.getCell(3).getNumericCellValue(), 0.0000000000000001); //F4: 15
assertEquals(16, row6.getCell(4).getNumericCellValue(), 0.0000000000000001); //G4: 16
assertNull(row7.getCell(2));
assertNull(row7.getCell(3));
assertNull(row7.getCell(4));
assertNull(row7.getCell(5));
//A1: =SUM(C4:F7) -> =SUM(B3:E6)
cellA1 = row1.getCell(0);
valueA1 = _evaluator.evaluate(cellA1);
assertEquals(136, valueA1.getNumberValue(), 0.0000000000000001);
assertEquals(Cell.CELL_TYPE_NUMERIC, valueA1.getCellType());
testToFormulaString(cellA1, "SUM(B3:E6)");
}