liujie
2026-08-21 a7c8a8f6055e1a03414f2227d12ff2e87ec52d41
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package com.tourguide.common.huifu.biz;
 
import org.junit.jupiter.api.Test;
 
import java.math.BigDecimal;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
 
import static org.assertj.core.api.Assertions.assertThat;
 
class DouGongBasicDataBizTest {
 
    @Test
    void availableBalanceShouldReturnZeroWhenAccountDataIsMissing() {
        assertThat(DouGongBasicDataBiz.availableBalance(null)).isEqualByComparingTo(BigDecimal.ZERO);
        assertThat(DouGongBasicDataBiz.availableBalance(Collections.<String, Object>emptyMap()))
                .isEqualByComparingTo(BigDecimal.ZERO);
 
        Map<String, Object> emptyAccounts = new HashMap<String, Object>();
        emptyAccounts.put("acctInfo_list", "[]");
        assertThat(DouGongBasicDataBiz.availableBalance(emptyAccounts)).isEqualByComparingTo(BigDecimal.ZERO);
 
        Map<String, Object> missingBalance = new HashMap<String, Object>();
        missingBalance.put("acctInfo_list", "[{}]");
        assertThat(DouGongBasicDataBiz.availableBalance(missingBalance)).isEqualByComparingTo(BigDecimal.ZERO);
    }
 
    @Test
    void availableBalanceShouldReadAvailableAmount() {
        Map<String, Object> response = new HashMap<String, Object>();
        response.put("acctInfo_list", "[{\"avail_bal\":\"123.45\"}]");
 
        assertThat(DouGongBasicDataBiz.availableBalance(response))
                .isEqualByComparingTo(new BigDecimal("123.45"));
    }
}