mod exchange_test; use std::collections::BTreeMap; use std::env; use std::io::Error; use rust_decimal_macros::dec; use tokio::sync::mpsc; use tracing::{instrument, trace}; use standard::exchange::{Exchange, ExchangeEnum}; use standard::{Order, OrderCommand, Platform, utils}; use crate::exchange_test::{test_new_exchange}; const SYMBOL: &str = "BLZ_USDT"; // 测试获取Exchange实体 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_self_exchange() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_self_exchange = kucoin_spot_exchange.get_self_exchange(); trace!(?kucoin_get_self_exchange); } // 测试获取交易对信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_self_symbol() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_self_symbol = kucoin_spot_exchange.get_self_symbol(); trace!(?kucoin_get_self_symbol); } // 测试获取是否使用高速通道 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_self_is_colo() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_self_is_colo = kucoin_spot_exchange.get_self_is_colo(); trace!(?kucoin_get_self_is_colo); } // 测试获取登录params信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_self_params() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_self_params = kucoin_spot_exchange.get_self_params(); trace!("kucoin_get_self_params={:?}",kucoin_get_self_params); } // 测试获取Market信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_self_market() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_self_market = kucoin_spot_exchange.get_self_market(); trace!(?kucoin_get_self_market); } // 测试获取请求时间信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_request_delays() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_request_delays = kucoin_spot_exchange.get_request_delays(); trace!(?kucoin_get_request_delays); } // 测试获取请求平均时间信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_request_avg_delay() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_request_avg_delay = kucoin_spot_exchange.get_request_avg_delay(); trace!(?kucoin_get_request_avg_delay); } // 测试获取最大请求时间信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_request_max_delay() { global::log_utils::init_log_with_trace(); let kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_request_max_delay = kucoin_spot_exchange.get_request_max_delay(); trace!(?kucoin_get_request_max_delay); } // 测试获取服务器时间 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_server_time() { global::log_utils::init_log_with_trace(); let mut kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_server_time = kucoin_spot_exchange.get_server_time().await; trace!(?kucoin_get_server_time); } // 测试获取账号信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_account() { global::log_utils::init_log_with_trace(); let mut kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_account = kucoin_spot_exchange.get_account().await; trace!(?kucoin_get_account); } // 测试获取Ticker信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_ticker() { global::log_utils::init_log_with_trace(); let mut kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_ticker = kucoin_spot_exchange.get_ticker().await; trace!(?kucoin_get_ticker); } // 测试获取Market信息 #[tokio::test] #[instrument(level = "TRACE")] async fn test_get_market() { global::log_utils::init_log_with_trace(); let mut kucoin_spot_exchange: Box = test_new_exchange(ExchangeEnum::KucoinSpot, SYMBOL).await; let kucoin_get_market = kucoin_spot_exchange.get_market().await; trace!(?kucoin_get_market); }