public void testCopy2() {
_sheet = ((BookImpl)_book).addSheet("sheet1", 256, 64*1024);
assertEquals(_sheet, _book.lookupSheet("sheet1"));
Cell cell = ((SheetImpl)_sheet).setCellEditText(2,0,"123"); //A3
FormatImpl fm = new FormatImpl();
cell.setFormat(fm);
fm.setFormatCodes("0;[Red](0)");
fm.setFontColor("#0000FF");
assertEquals("#0000FF", cell.getTextColor());
cell.setValue(new Double(1));
assertEquals(TextHAlign.RIGHT, cell.getTextHAlign());
cell.setValue("A String");
assertEquals(TextHAlign.LEFT, cell.getTextHAlign());
fm.setTextHAlign(TextHAlign.CENTER);
cell.setValue(new Double(1));
assertEquals(TextHAlign.CENTER, cell.getTextHAlign());
cell.setValue("a string");
assertEquals(TextHAlign.CENTER, cell.getTextHAlign());
Range rng = new RangeSimple(_sheet, null, 0, 2, 0, 2); //A3
rng.copy(new RangeSimple(_sheet, null, 0, 3, 2, 3)); //A4:C4
for (int j = 0; j < 3; ++j) {
Cell cellA4 = ((SheetImpl)_sheet).getCell(3,j); //A4 ~ C4
FormatImpl fm2 = (FormatImpl) cellA4.getFormat();
assertNotSame(fm, fm2);
assertEquals(fm.getFormatCodes(), fm2.getFormatCodes());
assertEquals("0;[Red](0)", fm2.getFormatCodes());
assertEquals(fm.getFontColor(), fm2.getFontColor());
assertEquals("#0000FF", fm2.getFontColor());
assertEquals("#0000FF", cellA4.getTextColor());
cellA4.setValue(new Double(1));
assertEquals(TextHAlign.CENTER, cellA4.getTextHAlign());
cellA4.setValue("a string");
assertEquals(TextHAlign.CENTER, cellA4.getTextHAlign());
}
}