예제 #1
0
        public async Task GetTransferTargetsGetsUrlMakesRequestThenReturnsListBidViewModel()
        {
            //Arrange
            var accessToken     = "ABC";
            var expectedPlayers = new List <BidViewModel>
            {
                new BidViewModel
                {
                    Status        = "Pending",
                    BidPrice      = 1400,
                    Pending       = true,
                    TimeRemaining = 123,
                    TradeId       = "12234"
                }
            };

            var expected = new auctionSearchModel
            {
                AuctionInfo = expectedPlayers
            };

            A.CallTo(() => _urlBuilder.GetTransferTargetsUrl()).Returns("TargetsUrl");
            A.CallTo(() => _getRequestMaker.MakeGetRequest("TargetsUrl", accessToken))
            .Returns(JsonConvert.SerializeObject(expected));

            //Act
            var actual = await _getRequestHandler.GetTransferTargets(accessToken);

            //Assert
            actual.Should().BeEquivalentTo(expectedPlayers);
            A.CallTo(() => _getRequestMaker.MakeGetRequest("TargetsUrl", accessToken)).MustHaveHappenedOnceExactly();
        }
예제 #2
0
        public async Task SearchForSpecificPlayerWhereExpiredTokenThrowsExpectedErrorAndReturnsExpectedEmptyListAsync()
        {
            // Arrange
            var bidPrice             = 1400;
            var playerId             = 12345;
            var accessToken          = "ABC";
            var expectedPlayerSearch = new List <BidViewModel>();
            var expected             = new auctionSearchModel
            {
                AuctionInfo = expectedPlayerSearch
            };

            A.CallTo(() => _urlBuilder.BuildSearchUrl(12345, 1400)).Returns("Dave");
            A.CallTo(() => _getRequestMaker.MakeGetRequest("Dave", accessToken)).Throws(new HttpRequestException());

            // Act
            var actual = await _getRequestHandler.SearchForSpecificPlayer(playerId, bidPrice, accessToken);

            // Assert
            Assert.IsInstanceOf <List <BidViewModel> >(actual);
            A.CallTo(() => _urlBuilder.BuildSearchUrl(12345, 1400)).MustHaveHappenedOnceExactly();
            A.CallTo(() => _getRequestMaker.MakeGetRequest("Dave", accessToken)).MustHaveHappenedOnceExactly();
            Assert.AreEqual(0, actual.Count);
        }
예제 #3
0
        public async Task SearchForSpecificPlayerBuildUrlCallsRequestMakerAndReturnsListSearchViewAsync()
        {
            // Arrange
            var bidPrice             = 1400;
            var playerId             = 12345;
            var accessToken          = "ABC";
            var expectedPlayerSearch = new List <BidViewModel>();
            var expected             = new auctionSearchModel
            {
                AuctionInfo = expectedPlayerSearch
            };

            A.CallTo(() => _urlBuilder.BuildSearchUrl(12345, 1400)).Returns("Dave");
            A.CallTo(() => _getRequestMaker.MakeGetRequest("Dave", accessToken))
            .Returns(JsonConvert.SerializeObject(expected));

            // Act
            var actual = await _getRequestHandler.SearchForSpecificPlayer(playerId, bidPrice, accessToken);

            // Assert
            Assert.IsInstanceOf <List <BidViewModel> >(actual);
            A.CallTo(() => _urlBuilder.BuildSearchUrl(12345, 1400)).MustHaveHappenedOnceExactly();
            A.CallTo(() => _getRequestMaker.MakeGetRequest("Dave", accessToken)).MustHaveHappenedOnceExactly();
        }