Helius
2020-10-29 1498b23be871aec99314da998569a94c9ab53607
src/test/java/com/xcong/excoin/WholeTest.java
@@ -1,5 +1,6 @@
package com.xcong.excoin;
import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSONObject;
import com.xcong.excoin.common.contants.AppContants;
import com.xcong.excoin.common.enumerates.CoinTypeEnum;
@@ -12,8 +13,11 @@
import com.xcong.excoin.modules.member.entity.MemberEntity;
import com.xcong.excoin.modules.member.entity.MemberWalletContractEntity;
import com.xcong.excoin.rabbit.pricequeue.OrderModel;
import com.xcong.excoin.rabbit.pricequeue.WebsocketPriceService;
import com.xcong.excoin.rabbit.producer.OrderProducer;
import com.xcong.excoin.utils.CalculateUtil;
import com.xcong.excoin.utils.CoinTypeConvert;
import com.xcong.excoin.utils.RedisUtils;
import com.xcong.excoin.utils.ThreadPoolUtils;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
@@ -22,7 +26,9 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * @author wzy
@@ -92,14 +98,6 @@
    @Autowired
    private OrderProducer orderProducer;
    @Test
    public void sendMsg() {
        List<OrderModel> list = new ArrayList<>();
        OrderModel orderModel = new OrderModel(1L, RabbitPriceTypeEnum.ENTRUST_OPEN_MORE.getValue(), "111", "BTC");
        list.add(orderModel);
        orderProducer.sendLimitClose(JSONObject.toJSONString(list));
    }
    // 面值*(多单张数*多单开仓价-空单张数*空单开仓价)-余额-已实现盈亏 / 面值*(多单张数-空单张数)-(维持保证金率+TAKER手续费)*面值*(开多张数+开空张数)
@@ -115,7 +113,47 @@
     */
    @Test
    public void forceSetPriceTest() {
        MemberEntity memberEntity = memberDao.selectById(66L);
        CalculateUtil.getForceSetPriceForWhole("BTC/USDT", memberEntity);
    }
    @Test
    public void initOrderTest() {
        List<HashMap<String, Object>> wholeHoldOrders = contractHoldOrderDao.selectAllWholeOrderMemberIdAndSymbol();
        if (CollUtil.isNotEmpty(wholeHoldOrders)) {
            MemberEntity memberEntity = null;
            for (HashMap<String, Object> wholeHoldOrder : wholeHoldOrders) {
                Long memberId = (Long) wholeHoldOrder.get("member_id");
                String symbol = (String) wholeHoldOrder.get("symbol");
                if (memberEntity == null || !memberId.equals(memberEntity.getId())) {
                    memberEntity = memberDao.selectById(memberId);
                }
                System.out.println(memberId + "-----" + symbol);
            }
        }
    }
    @Resource
    private RedisUtils redisUtils;
    @Test
    public void redisTest() {
        for (int i = 827; i < 999; i++) {
            redisUtils.del(AppContants.CLOSING_ORDER_PREFIX + i);
        }
    }
    @Resource
    WebsocketPriceService websocketPriceService;
    @Test
    public void priceTest() {
        String symbol = "BTC/USDT";
        String price = "13095.00";
        // TODO 测试环境关闭这个插入redis
        redisUtils.set(CoinTypeConvert.convertToKey(symbol), price);
        // 比较
        websocketPriceService.comparePriceAsc(symbol, price);
        websocketPriceService.comparePriceDesc(symbol, price);
    }
}