View | Details | Raw Unified | Return to bug 56315
Collapse All | Expand All

(-)src/java/org/apache/poi/ss/formula/functions/MathX.java (-1 / +2 lines)
Lines 17-22 Link Here
17
17
18
package org.apache.poi.ss.formula.functions;
18
package org.apache.poi.ss.formula.functions;
19
19
20
import org.apache.poi.ss.util.NumberToTextConverter;
20
21
21
/**
22
/**
22
 * @author Amol S. Deshmukh < amolweb at ya hoo dot com >
23
 * @author Amol S. Deshmukh < amolweb at ya hoo dot com >
Lines 53-59 Link Here
53
            retval = Double.NaN;
54
            retval = Double.NaN;
54
        }
55
        }
55
        else {
56
        else {
56
            retval = java.math.BigDecimal.valueOf(n).setScale(p, java.math.RoundingMode.HALF_UP).doubleValue();
57
            retval = new java.math.BigDecimal(NumberToTextConverter.toText(n)).setScale(p, java.math.RoundingMode.HALF_UP).doubleValue();
57
        }
58
        }
58
59
59
        return retval;
60
        return retval;
(-)src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java (+9 lines)
Lines 1455-1458 Link Here
1455
        Workbook nwb = XSSFTestDataSamples.writeOutAndReadBack(wb);
1455
        Workbook nwb = XSSFTestDataSamples.writeOutAndReadBack(wb);
1456
        assertEquals(0, nwb.getSheetIndex("Market Rates"));
1456
        assertEquals(0, nwb.getSheetIndex("Market Rates"));
1457
    }
1457
    }
1458
1459
    @Test
1460
    public void bug56315() {
1461
        XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("56315.xlsx");
1462
        Cell c = wb.getSheetAt(0).getRow(1).getCell(0);
1463
        CellValue cv = wb.getCreationHelper().createFormulaEvaluator().evaluate(c);
1464
        double rounded = cv.getNumberValue();
1465
        assertEquals(0.1, rounded, 0.0);
1466
    }
1458
}
1467
}

Return to bug 56315