Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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");
        }