public void GetAllAds_ShouldReturnAllAdsSortedByTypeIndex() { var fakeAds = this.mocks.AdRepositoryMock.Object.All(); var mockContext = new Mock<IOnlineShopData>(); var mockUserIdProvider = new Mock<IUserIdProvider>(); mockContext .Setup(r => r.Ads.All()) .Returns(fakeAds); var adsController = new AdsController(mockContext.Object, mockUserIdProvider.Object); this.SetupController(adsController); var response = adsController.Get() .ExecuteAsync(CancellationToken.None).Result; Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); var adsResponse = response.Content .ReadAsAsync<IEnumerable<AdViewModel>>() .Result.Select(a => a.Id) .ToList(); var orderedFakeAds = fakeAds .OrderByDescending(a => a.Type.Index) .ThenByDescending(a => a.PostedOn) .Select(a => a.Id) .ToList(); CollectionAssert.AreEqual(orderedFakeAds, adsResponse); }
public void WhenGettingById_ShouldReturnCorrectAd() { // Arrange var expected = new Ad { Id = 2, Name = "MWC" }; var ads = new List <Ad> { new Ad { Id = 1, Name = "WWDC" }, expected, }; _dbContext.Ads.AddRange(ads); _dbContext.SaveChanges(); // Act var actual = _adsController.Get(2); // Assert actual.Value.Should().BeEquivalentTo(expected); }
public void CanCallGet() { var ad = new Ad() { Id = 10, Name = "10", Description = "10" }; var mock = new Mock<IAdRepository>(); mock.Setup(c => c.Get(It.IsAny<int>())).Returns(ad); var controller = new AdsController(mock.Object); var result = controller.Get(10); Assert.IsTrue(result.Name == "10"); }