Exemplo n.º 1
0
 public PhoneBookRepositoryTests(UnitOfWorkFixture unitOfWorkFixture)
 {
     _unitOfWork          = unitOfWorkFixture.UnitOfWork;
     _phonebookRepository = unitOfWorkFixture.UnitOfWork.PhoneBookRecordRepository;
     _context             = unitOfWorkFixture.Context;
     _loggerFactory       = unitOfWorkFixture.LoggerFactory;
 }
        public static async Task SeedAsync(HasinContext catalogContext,
                                           ILoggerFactory loggerFactory, int?retry = 0)
        {
            int retryForAvailability = retry.Value;

            try
            {
                // TODO: Only run this if using a real database
                // catalogContext.Database.Migrate();
                if (!await catalogContext.PhoneBookRecords.AnyAsync())
                {
                    catalogContext.PhoneBookRecords.AddRange(GetPreconfiguredPhoneBookRecords());

                    await catalogContext.SaveChangesAsync();
                }

                if (!await catalogContext.Tags.AnyAsync())
                {
                    catalogContext.Tags.AddRange(GetPreconfiguredTags());

                    await catalogContext.SaveChangesAsync();
                }
            }
            catch (Exception ex)
            {
                if (retryForAvailability < 10)
                {
                    retryForAvailability++;
                    var log = loggerFactory.CreateLogger <HasinContextSeed>();
                    log.LogError(ex.Message);
                    await SeedAsync(catalogContext, loggerFactory, retryForAvailability);
                }
                throw;
            }
        }
Exemplo n.º 3
0
 public TagRepositoryTests(UnitOfWorkFixture unitOfWorkFixture)
 {
     _unitOfWork    = unitOfWorkFixture.UnitOfWork;
     _tagRepository = unitOfWorkFixture.UnitOfWork.TagRepository;
     _context       = unitOfWorkFixture.Context;
     _loggerFactory = unitOfWorkFixture.LoggerFactory;
 }
Exemplo n.º 4
0
        public UnitOfWorkFixture()
        {
            var options = new DbContextOptionsBuilder <HasinContext>()
                          .UseInMemoryDatabase(databaseName: "TestDatabase")
                          .Options;

            Context    = new HasinContext(options);
            UnitOfWork = new UnitOfWork(Context);

            var serviceProvider = new ServiceCollection().AddLogging().BuildServiceProvider();

            LoggerFactory = serviceProvider.GetService <ILoggerFactory>();
        }
Exemplo n.º 5
0
 public TagRepository(HasinContext dbContext) : base(dbContext)
 {
 }
Exemplo n.º 6
0
 public GenericRepository(HasinContext dbContext)
 {
     _dbContext = dbContext;
 }
 public PhoneBookRecordRepository(HasinContext dbContext) : base(dbContext)
 {
 }