public async Task FindAsync_Returns_results()
        {
            // arrange
            var boardGamesList = new BoardGameListDto()
            {
                BoardGames = DataProvider.GetBoardGameResults()
            };

            var apiProviderMock = new Mock <IApiProvider>(MockBehavior.Strict);

            apiProviderMock
            .Setup(x => x.BuildUri(ApiEndPoint.BoardGame, "100", It.IsAny <NameValueCollection>()))
            .Returns(new Uri("http://fake/url"));
            apiProviderMock
            .Setup(x => x.CallWebServiceGetAsync <BoardGameListDto>(It.IsAny <Uri>()))
            .ReturnsAsync(boardGamesList);
            apiProviderMock
            .Setup(x => x.GetQueryPropertyName <BoardGameQueryParameters>("Comments"))
            .Returns("comments");
            var modelFactory = new ModelFactory();
            var service      = BoardGameService.Create(apiProviderMock.Object, modelFactory);

            service.Where(x => x.Comments, true);

            // act
            var result = await service.FindAsync(new[] { "100" });

            // assert
            Assert.True(result.IsSuccess);
            Assert.Equal(boardGamesList.BoardGames.Count, result.Value.Count);
        }
Example #2
0
        public async Task SearchAsync_Returns_results()
        {
            // arrange
            var boardGamesList = new BoardGameListDto()
            {
                BoardGames = DataProvider.GetBoardGameSearchResults()
            };

            var apiProviderMock = new Mock <IApiProvider>(MockBehavior.Strict);

            apiProviderMock
            .Setup(x => x.BuildUri(ApiEndPoint.Search, It.IsAny <NameValueCollection>()))
            .Returns(new Uri("http://fake/url"));
            apiProviderMock
            .Setup(x => x.CallWebServiceGetAsync <BoardGameListDto>(It.IsAny <Uri>()))
            .ReturnsAsync(boardGamesList);
            var modelFactory = new ModelFactory();
            var service      = BoardGameSearchService.Create(apiProviderMock.Object, modelFactory);

            // act
            var result = await service.SearchAsync();

            // assert
            Assert.True(result.IsSuccess);
            Assert.Equal(boardGamesList.BoardGames.Count, result.Value.Count);
        }