示例#1
0
        public async Task Index_Returns_AListOfProducts()
        {
            // Arrange
            mock.Setup(repo => repo.GetAllAsync()).ReturnsAsync(GetSupermarkets());
            controller = new SupermarketsController(mock.Object);

            // Act
            var result = await controller.Index();

            // Assert
            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsAssignableFrom <IEnumerable <Supermarket> >(viewResult.ViewData.Model);

            GetSupermarkets().Should().BeEquivalentTo(model);
        }
示例#2
0
        public async void TestSupermarketsIndex()
        {
            var option  = new DbContextOptionsBuilder <ShoppingContext>().UseInMemoryDatabase(databaseName: "testDB").Options;
            var context = new ShoppingContext(option);

            SampleData.Initialize(context);

            Supermarket[] supermarkets = new Supermarket[]
            {
                new Supermarket {
                    Name = "Rozetka", Address = "Petrovka district", Id = 1
                },
                new Supermarket {
                    Name = "Comfy", Address = "Obolonsky district", Id = 2
                },
                new Supermarket {
                    Name = "Foxtrot", Address = "Pechercka district", Id = 3
                },
                new Supermarket {
                    Name = "Allo", Address = "Shevchenka district", Id = 4
                },
                new Supermarket {
                    Name = "Citrus", Address = "Obolon, Drea Town", Id = 5
                },
                new Supermarket {
                    Name = "Moyo", Address = "Skymall Troeshina", Id = 6
                },
                new Supermarket {
                    Name = "Stilus", Address = "Svyatosino", Id = 7
                },
            };
            var supermarketsList = supermarkets.ToList();
            var mock             = new Mock <SupermarketsService>(context);
            var controller       = new SupermarketsController(mock.Object);
            var resultView       = await controller.Index();

            var viewResult = Assert.IsType <ViewResult>(resultView);


            var model = Assert.IsAssignableFrom <IEnumerable <Supermarket> >(viewResult.Model).OrderBy(p => p.Id).ToList();

            for (int i = 0; i < supermarketsList.Count; i++)
            {
                Assert.Equal(supermarkets[i].Id, model[i].Id);
            }
        }