コード例 #1
0
        public void GetAllAds_Should_Return_Total_ads_Sorted_by_Type_Index()
        {

            // Arrange
            var fakeAds = mocks.AdRepositoryMock.Object.All();

            var mockContext = new Mock<IOnlineShopData>();
            mockContext.Setup(m => m.Ads.All()).Returns(fakeAds);

            var mockUserIdProvider = new Mock<IUserIdProvider>();


            var adsController = new AdsController(mockContext.Object,mockUserIdProvider.Object);

            this.SetupController(adsController);

            // Act
            var response = adsController.GetAllAds().ExecuteAsync(CancellationToken.None)
                .Result;

            //Assert
            Assert.AreEqual(response.StatusCode, HttpStatusCode.OK);

        }
コード例 #2
0
        public void GetAllAds_ShouldReturn_AllAds_SortedByIndex()
        {
            // Arrange
            var fakeAds = this.mockContainer.AdRepositoryMock.Object.All();
            var fakeUser = this.mockContainer.ApplicationUserRepositoryMock.Object.All().FirstOrDefault();
            var mockContext = new Mock<IOnlineShopData>();
            mockContext.Setup(r => r.Ads.All()).Returns(fakeAds.AsQueryable());
            var mockIdProvider = new Mock<IUserIdProvider>();
            if (fakeUser == null)
            {
                Assert.Fail("Cannot perform test no users available.");
            }

            mockIdProvider.Setup(r => r.GetUserId()).Returns(fakeUser.Id);

            // Act
            var adsController = new AdsController(mockContext.Object, mockIdProvider.Object);
            this.SetupController(adsController);
            var httpResponse = adsController.GetAllAds().ExecuteAsync(CancellationToken.None).Result;
            var result = httpResponse.Content.ReadAsAsync<IEnumerable<AllAdsViewModel>>().Result.Select(a => a.Id);
            var orderedFakeAds = fakeAds.OrderBy(a => a.TypeId).Select(a => a.Id).ToList();

            // Assert
            Assert.AreEqual(HttpStatusCode.OK, httpResponse.StatusCode);
            CollectionAssert.AreEqual(orderedFakeAds, result.ToList());
        }