public static async Task <OpenReddingDbContext> Create()
        {
            var options = new DbContextOptionsBuilder <OpenReddingDbContext>()
                          .UseInMemoryDatabase("OpenRedding.Core.Tests.Db")
                          .Options;

            var context = new OpenReddingDbContext(options);

            context.Database.EnsureCreated();
            await OpenReddingDatabaseInitializer.Initialize(context);

            return(context);
        }
        public TestFixture()
        {
            // Configure services
            var services = new ServiceCollection();

            services.AddEntityFrameworkInMemoryDatabase()
            .AddDbContext <OpenReddingDbContext>(options => options.UseInMemoryDatabase($"{Guid.NewGuid()}.db"));

            // Initialize the database with seed data and context accessors services
            var serviceProvider = services.BuildServiceProvider();
            var databaseContext = serviceProvider.GetRequiredService <OpenReddingDbContext>();

            databaseContext.Database.EnsureCreated();
            OpenReddingDatabaseInitializer.Initialize(databaseContext).Wait();

            Context = databaseContext;
            TestUri = new Uri("http://test-domain.com");
        }