예제 #1
0
        public async void CanGetAmenitiesFromDatabase()
        {
            DbContextOptions <AsyncInnDbContext> options = new DbContextOptionsBuilder <AsyncInnDbContext>()
                                                           .UseInMemoryDatabase("CanGetAmenitiesFromDatabase")
                                                           .Options;

            using AsyncInnDbContext context = new AsyncInnDbContext(options);

            AmenityManager service = new AmenityManager(context);

            _ = await service.CreateAmenity(new AmenityDto()
            {
                Name = "Test One"
            });

            _ = await service.CreateAmenity(new AmenityDto()
            {
                Name = "Test Two"
            });

            var amenitiesFromDb = context.Amenities.ToListAsync().Result;
            var dtos            = await service.GetAmenities();

            var expected = new List <string>();
            var actual   = new List <string>();

            foreach (var item in amenitiesFromDb)
            {
                expected.Add(item.Name);
            }

            foreach (var item in dtos)
            {
                actual.Add(item.Name);
            }

            Assert.Equal(2, actual.Count);
            Assert.Equal(expected.Count, actual.Count);
            Assert.Equal(expected, actual);
        }