StatisticAttributeServiceIT.java 3.71 KB
Newer Older
eddie.woo's avatar
eddie.woo committed
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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
package pwc.taxtech.atms.service.impl;

import static org.assertj.core.api.Assertions.assertThat;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;

import pwc.taxtech.atms.CommonIT;
import pwc.taxtech.atms.constant.DimensionConstant;
import pwc.taxtech.atms.dto.StatisticAttributeDisplayDto;
import pwc.taxtech.atms.dto.StatisticAttributeDto;
import pwc.taxtech.atms.entitiy.Dictionary;
import pwc.taxtech.atms.entitiy.StatisticAttribute;
import pwc.taxtech.atms.service.StatisticAttributeService;

public class StatisticAttributeServiceIT extends CommonIT {

    @Before
    public void setUp() {
        statisticAttributeMapper.deleteByExample(null);
        statisticAttributeDimensionMapper.deleteByExample(null);
        dictionaryMapper.deleteByExample(null);
    }

    @Autowired
    private StatisticAttributeService statisticAttributeService;

    private void insertBaseDataForStatisticAttribute() {
        // 准备三条StatisticAttribute数据
        // select * from StatisticAttribute where id in
        // ('c61a5bd6-a996-4952-9869-d053995237e7','c61a5bd6-a996-4952-9869-d053996237e8','c61a5bd6-a996-4952-9869-d053995237e6')
        {
            StatisticAttribute record = newRecord();
            record.setID(DimensionConstant.OrgSubChildrenID);
            record.setName("机构");
            statisticAttributeMapper.insert(record);
        }
        {
            StatisticAttribute record = newRecord();
            record.setID(DimensionConstant.AreaID);
            record.setName("覆盖区域");
            statisticAttributeMapper.insert(record);
        }
        {
            StatisticAttribute record = newRecord();
            record.setID(DimensionConstant.UserID);
            record.setName("用户数");
            statisticAttributeMapper.insert(record);
        }
    }

    private StatisticAttribute newRecord() {
        StatisticAttribute record = new StatisticAttribute();
        record.setIsActive(true);
        record.setCreateTime(new Date());
        record.setUpdateTime(new Date());
        return record;
    }

    @Test
    public void getStatisticAttributeListByDimensionID() {
        String parentDimensionID = "id1";
        List<StatisticAttributeDisplayDto> rawAttrList = new ArrayList<>();
        statisticAttributeService.getStatisticAttributeListByDimensionID(parentDimensionID, rawAttrList);
    }

    @Test
    public void getStatisticAttributeList() {
        insertBaseDataForStatisticAttribute();
        List<StatisticAttributeDto> list = statisticAttributeService.getStatisticAttributeList(null);
        assertThat(list).isNotEmpty();
    }

    @Test
    public void getStatisticAttributeListWithCode() {
        insertBaseDataForStatisticAttribute();
        insertDict();
        List<StatisticAttributeDto> list = statisticAttributeService.getStatisticAttributeList("code1");
        assertThat(list).isNotEmpty();
        assertThat(list).extracting("name").contains("dictvalue1", "用户数");
    }

    @Test
    public void updateStatisticAttribute() {
        assertThat(statisticAttributeService.updateStatisticAttribute(null).getResult()).isTrue();
    }

    public void insertDict() {
        Dictionary record = new Dictionary();
        record.setID("dictionary_unit_test_uuid");
        record.setCode("code1");
        record.setCreateTime(new Date());
        record.setUpdateTime(new Date());
        record.setDictKey("dictkey1");
        record.setDictValue("dictvalue1");
        record.setIsActive(true);
        record.setOrderIndex(1);
        record.setParentCode("");
        record.setRemark("");
        dictionaryMapper.insert(record);
    }
}