Exemplo n.º 1
0
        public async Task SeedAsync(PizzaLabDbContext dbContext, IServiceProvider serviceProvider)
        {
            if (dbContext == null)
            {
                throw new ArgumentNullException(nameof(dbContext));
            }

            if (serviceProvider == null)
            {
                throw new ArgumentNullException(nameof(serviceProvider));
            }

            var logger = serviceProvider.GetService <ILoggerFactory>().CreateLogger(typeof(ApplicationDbContextSeeder));

            var seeders = new List <ISeeder>
            {
                new RolesSeeder(),
                new SettingsSeeder(),
            };

            foreach (var seeder in seeders)
            {
                await seeder.SeedAsync(dbContext, serviceProvider);

                await dbContext.SaveChangesAsync();

                logger.LogInformation($"Seeder {seeder.GetType().Name} done.");
            }
        }
Exemplo n.º 2
0
        public async Task SeedAsync(PizzaLabDbContext dbContext, IServiceProvider serviceProvider)
        {
            if (dbContext.Settings.Any())
            {
                return;
            }

            await dbContext.Settings.AddAsync(new Setting { Name = "Setting1", Value = "value1" });
        }
Exemplo n.º 3
0
        public UsersLikesServiceTests()
        {
            var options = new DbContextOptionsBuilder <PizzaLabDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;
            var dbContext = new PizzaLabDbContext(options);

            this._usersLikesRepository = new EfRepository <UsersLikes>(dbContext);
            this._usersLikesService    = new UsersLikesService(_usersLikesRepository);
        }
Exemplo n.º 4
0
        public ProductsIngredientsServiceTests()
        {
            var options = new DbContextOptionsBuilder <PizzaLabDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;
            var dbContext = new PizzaLabDbContext(options);

            this._productsIngredientsRepository = new EfRepository <ProductsIngredients>(dbContext);
            this._productsIngredientsService    = new ProductsIngredientsService(_productsIngredientsRepository);
        }
        public CategoriesServiceTests()
        {
            var options = new DbContextOptionsBuilder <PizzaLabDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;
            var dbContext = new PizzaLabDbContext(options);

            var mapperProfile = new MappingConfiguration();
            var conf          = new MapperConfiguration(cfg => cfg.AddProfile(mapperProfile));
            var mapper        = new Mapper(conf);

            this._categoriesRepository = new EfRepository <Category>(dbContext);
            this._categoriesService    = new CategoriesService(_categoriesRepository, mapper);
        }
Exemplo n.º 6
0
        public async Task GetCountShouldReturnCorrectNumberUsingDbContext()
        {
            var options = new DbContextOptionsBuilder <PizzaLabDbContext>()
                          .UseInMemoryDatabase(databaseName: "SettingsTestDb").Options;

            using var dbContext = new PizzaLabDbContext(options);
            dbContext.Settings.Add(new Setting());
            dbContext.Settings.Add(new Setting());
            dbContext.Settings.Add(new Setting());
            await dbContext.SaveChangesAsync();

            using var repository = new EfDeletableEntityRepository <Setting>(dbContext);
            var service = new SettingsService(repository);

            Assert.Equal(3, service.GetCount());
        }
Exemplo n.º 7
0
 public EfRepository(PizzaLabDbContext context)
 {
     this.Context = context ?? throw new ArgumentNullException(nameof(context));
     this.DbSet   = this.Context.Set <TEntity>();
 }
Exemplo n.º 8
0
        public async Task SeedAsync(PizzaLabDbContext dbContext, IServiceProvider serviceProvider)
        {
            var roleManager = serviceProvider.GetRequiredService <RoleManager <ApplicationRole> >();

            await SeedRoleAsync(roleManager, GlobalConstants.AdministratorRoleName);
        }
Exemplo n.º 9
0
 public EfDeletableEntityRepository(PizzaLabDbContext context)
     : base(context)
 {
 }