NumberFormatException в тестовом примере junit - PullRequest
0 голосов
/ 20 сентября 2019

Я столкнулся с некоторой случайной проблемой в тестовом примере.Я обработал NumberFormatException в коде, но при выполнении тестового примера появляется то же исключение.Пожалуйста, дайте мне знать, если я что-то делаю не так.Спасибо за помощь.

Это мой тестовый пример

@Test
public void splitAmountByDecimal_getCharacterValue(){
    String[] data = OtherUtil.splitAmountByDecimal("123abc.01");
    boolean result=true;

    if(data==null || data.length<2 || !data[0].equals("00") || !data[1].equals(".00")) {
        result = false;
    }
    Assert.assertThat(result, is(true));
}

И это мой код

 public static String[] splitAmountByDecimal(String amount){
    String[] values=new String[]{"00",".00"};
    if(amount!=null && amount.length()>0){
        try{
            amount = String.valueOf(Math.round(Double.parseDouble(amount)*100.0)/100.0);
        }catch(NumberFormatException e){
            e.printStackTrace();
            return values;
        }

        String[] splitValues=amount.split("\\.");
        if(splitValues.length>1){
            if(splitValues[1].length()<2){
                splitValues[1]=splitValues[1]+"0";
            }
            splitValues[1]="."+splitValues[1];
            return splitValues;
        }else{
            return new String[]{amount,".00"};
        }
    }
    return values;
}

И я сталкиваюсь с этим enter image description here

...