Esempio n. 1
0
        public async Task GetCompressedAggregateTrades_Null_Throws()
        {
            // Arrange

            // Act

            // Assert
            await Assert.ThrowsAsync <ArgumentNullException>(() => ConcreteBinanceClient.GetCompressedAggregateTrades(null));
        }
Esempio n. 2
0
        public async Task GetOrderBook_ExcessiveLimit_Throws()
        {
            // Arrange

            // Act

            // Assert
            await Assert.ThrowsAsync <ArgumentException>(() => ConcreteBinanceClient.GetOrderBook(TradingPairSymbols.BNBPairs.NEO_BNB, false, 9999));
        }
Esempio n. 3
0
        public async Task CloseUserDataStream_NullListenKey_Throws()
        {
            // Arrange

            // Act

            // Assert
            await Assert.ThrowsAsync <ArgumentNullException>(async() => await ConcreteBinanceClient.CloseUserDataStream(null));
        }
Esempio n. 4
0
        public async Task GetOrderBook_NullSymbol_Throws()
        {
            // Arrange

            // Act

            // Assert
            await Assert.ThrowsAsync <ArgumentNullException>(() => ConcreteBinanceClient.GetOrderBook(null));
        }
Esempio n. 5
0
        public async Task GetCompressedAggregateTrades_NullSymbol_Throws()
        {
            // Arrange
            var request = new GetCompressedAggregateTradesRequest()
            {
                Symbol = null,
            };

            // Act

            // Assert
            await Assert.ThrowsAsync <ArgumentNullException>(() => ConcreteBinanceClient.GetCompressedAggregateTrades(request));
        }
Esempio n. 6
0
        public async Task GetCompressedAggregateTrades_StartTimeMin_Throws()
        {
            // Arrange
            var request = new GetCompressedAggregateTradesRequest()
            {
                Symbol    = "ETHBTC",
                StartTime = DateTime.MinValue,
            };

            // Act

            // Assert
            await Assert.ThrowsAsync <ArgumentNullException>(() => ConcreteBinanceClient.GetCompressedAggregateTrades(request));
        }
Esempio n. 7
0
        public async Task GetOrderBook_ValidArguments_CallsProcessGetRequest()
        {
            // Arrange

            // Act
            await ConcreteBinanceClient.GetOrderBook(TradingPairSymbols.BNBPairs.NEO_BNB);

            // Assert
            MockAPIProcessor.Verify(a => a.ProcessGetRequest <OrderBookResponse>(
                                        It.Is <BinanceEndpointData>(u => u.Uri.Equals(Endpoints.MarketData.OrderBook(TradingPairSymbols.BNBPairs.NEO_BNB, 100, false).Uri)),
                                        5000),
                                    Times.Once()
                                    );
        }
Esempio n. 8
0
        public async Task StartUserDataStream_Invoke_CallsProcessPostRequest()
        {
            // Arrange

            // Act
            await ConcreteBinanceClient.StartUserDataStream();

            // Assert
            MockAPIProcessor.Verify(a => a.ProcessPostRequest <UserDataStreamResponse>(
                                        It.Is <BinanceEndpointData>(u => u.Uri.Equals(Endpoints.UserStream.StartUserDataStream.Uri)),
                                        5000),
                                    Times.Once()
                                    );
        }
        public async Task GetServerTime_Invoke_CallsProcessGetRequest()
        {
            // Arrange

            // Act
            await ConcreteBinanceClient.GetServerTime();

            // Assert
            MockAPIProcessor.Verify(a => a.ProcessGetRequest <ServerTimeResponse>(
                                        It.Is <BinanceEndpointData>(u => u.Uri.Equals(Endpoints.General.ServerTime.Uri)),
                                        5000),
                                    Times.Once()
                                    );
        }
        public async Task TestConnectivity_Invoke_CallsProcessGetRequest()
        {
            // Arrange

            // Act
            await ConcreteBinanceClient.TestConnectivity();

            // Assert
            MockAPIProcessor.Verify(a => a.ProcessGetRequest <EmptyResponse>(
                                        It.Is <BinanceEndpointData>(u => u.Uri.Equals(Endpoints.General.TestConnectivity.Uri)),
                                        5000),
                                    Times.Once()
                                    );
        }
Esempio n. 11
0
        public async Task CloseUserDataStream_ValidListenKey_CallsProcessPutRequest()
        {
            // Arrange
            var listenKey = "listenKey";

            // Act
            await ConcreteBinanceClient.CloseUserDataStream(listenKey);

            // Assert
            MockAPIProcessor.Verify(a => a.ProcessDeleteRequest <UserDataStreamResponse>(
                                        It.Is <BinanceEndpointData>(u => u.Uri.Equals(Endpoints.UserStream.CloseUserDataStream(listenKey).Uri)),
                                        5000),
                                    Times.Once()
                                    );
        }
Esempio n. 12
0
        public async Task GetCompressedAggregateTrades_ValidRequest_CallsProcessGetRequest()
        {
            // Arrange
            var request = new GetCompressedAggregateTradesRequest()
            {
                Symbol    = "ETHBTC",
                StartTime = DateTime.UtcNow.AddHours(-1),
                EndTime   = DateTime.UtcNow,
            };

            // Act
            await ConcreteBinanceClient.GetCompressedAggregateTrades(request);

            // Assert
            MockAPIProcessor.Verify(i => i.ProcessGetRequest <List <CompressedAggregateTradeResponse> >(
                                        It.Is <BinanceEndpointData>(u => u.Uri.Equals(Endpoints.MarketData.CompressedAggregateTrades(request).Uri)),
                                        5000),
                                    Times.Once());
        }