测试BigDecimal值

时间:2017-11-07 14:46:59

标签: java eclipse junit4 bigdecimal

当测试我的bigdecimal值在校正后是否仍设置为缩放时,我收到初始化错误。 Eclipse声明该断言已被弃用。在将bigDecimal的值与double进行比较时,如何正确创建断言?

public Account(double startBalance){
        this.acctId=currId;
        currId= currId + counter;
        balance = new BigDecimal(startBalance);
        balance = balance.setScale(2, BigDecimal.ROUND_FLOOR);
    }

测试用例:

@Test
public void testIfBigDecimalIsSetToScale(){
    BigDecimal depositAmountToTest = new BigDecimal(34.12345678);
    BigDecimal expectedAmount = new BigDecimal(34.12);
    classUnderTest.setCorrection(depositAmountToTest);

    assertEquals(expectedAmount.doubleValue(), classUnderTest.getBalance())
}

1 个答案:

答案 0 :(得分:1)

避免使用带有double的构造函数,因为它的比例默认为。

BigDecimal depositAmountToTest = new BigDecimal("34.12345678"); // Scale 8
BigDecimal expectedAmount = new BigDecimal("34.12"); // Scale 2