public async Task When_I_search_for_blogs()
        {
            var blogRepository       = new EfReadRepository <Blog>(_mockDbContext.BloggingContext);
            var specificationFactory = new SpecificationFactory();
            var service = new BlogService(specificationFactory, blogRepository);

            _searchResult = await service.GetNotExpiredBlogsAfterAsync(_searchDateTime, CancellationToken.None);
        }
Пример #2
0
        public SearchCoffeeMachinesTest(CoffeeMockDbContext mockDbContext)
        {
            _mockDbContext = mockDbContext;
            var coffeeMachineRepository = new EfReadRepository <CoffeeMachine>(_mockDbContext.CoffeeContext);
            var coffeePodRepository     = new EfReadRepository <CoffeePod>(_mockDbContext.CoffeeContext);

            var specificationFactory = new SpecificationFactory();

            _coffeeService = new CoffeeService(specificationFactory, coffeeMachineRepository, coffeePodRepository, null);
        }
Пример #3
0
        public async Task Get_blogs_not_expired_and_created_after_date(string dateParameter, string countParameter)
        {
            // Arrange
            var afterDate = DateTime.Parse(dateParameter);
            var count     = long.Parse(countParameter);

            // Act
            var blogRepository       = new EfReadRepository <Blog>(_mockDbContext.BloggingContext);
            var specificationFactory = new SpecificationFactory();
            var service      = new BlogService(specificationFactory, blogRepository);
            var searchResult = await service.GetNotExpiredBlogsAfterAsync(afterDate, CancellationToken.None);

            // Assert
            Check.That(searchResult).IsEqualTo(count);
        }
Пример #4
0
        private static async Task Main()
        {
            using (var context = new DesignTimeDbContextFactory().CreateDbContext(null))
            {
                context.ConfigureLogging(s => Console.WriteLine(s), SqlLoggerFilter);
                await BloggingContextSeed.SeedAsync(context);

                var specificationFactory = new SpecificationFactory();
                var specification        = specificationFactory.Create <Blog>()
                                           .CreatedAfter(new DateTime(2017, 1, 1));

                var blogRepository = new EfReadRepository <Blog>(context);
                var result         = blogRepository
                                     .Where(specification, b => b.Posts)
                                     .ToList();

                ConsoleTableBuilder
                .From(result.ToDataTable())
                .WithFormat(ConsoleTableBuilderFormat.Minimal)
                .ExportAndWriteLine();
            }
        }