Esempio n. 1
0
        public async Task DeleteDirectorCorrectly()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var repository = new EfDeletableEntityRepository <Director>(new ApplicationDbContext(options.Options));
            var movieDiretorsRepository = new EfRepository <MovieDirector>(new ApplicationDbContext(options.Options));

            var directorRep = new Director {
                FullName = "John DoeId"
            };
            await repository.AddAsync(directorRep);

            await repository.AddAsync(new Director { FullName = "JohnDoe" });

            await repository.AddAsync(new Director { FullName = "John Doe" });

            await repository.SaveChangesAsync();

            var directorsService = new DirectorsService(repository, movieDiretorsRepository);

            AutoMapperConfig.RegisterMappings(typeof(DirectorTestModel).Assembly);
            await directorsService.DeleteDirectorAsync(directorRep.Id);

            var directorsCount = directorsService.GetAll <DirectorTestModel>().Count;

            Assert.Equal(2, directorsCount);
        }