예제 #1
0
        public void Should_dispose_query_handlers_after_instaniate_if_use_internal_object_resolver()
        {
            // Arrange
            pipelineService.PipelineContainer.AddQueryPipeline()
            .AddMiddleware(new Queries.PipelineMiddlewares.QueryObjectResolverMiddleware
            {
                UseInternalObjectResolver = true
            })
            .AddMiddleware(new Queries.PipelineMiddlewares.QueryExecutorMiddleware());

            // Act
            pipelineService.Query <QueryClass>().With(q => q.Query());

            // Assert
            Assert.True(QueryClass.IsDisposed);
        }
예제 #2
0
        public async Task <IActionResult> List(int?ratingAbove, int?runtimeMinsAbove, int?runtimeMinsBelow, string hasActor)
        {
            MoviesFilter moviesFilter = new MoviesFilter
            {
                RatingAbove      = ratingAbove,
                RuntimeMinsAbove = runtimeMinsAbove,
                RuntimeMinsBelow = runtimeMinsBelow,
                HasActor         = hasActor?.TrimStart().TrimEnd()
            };

            ViewData["MoviesRatingAbove"]      = ratingAbove;
            ViewData["MoviesRuntimeMinsAbove"] = runtimeMinsAbove;
            ViewData["MoviesRuntimeMinsBelow"] = runtimeMinsBelow;
            ViewData["MoviesHasActor"]         = hasActor;

            var movies = await pipelineService.Query <ImdbQueries>().With(q => q.SearchMoviesAsync(moviesFilter));

            var movieModels = await GetMovieModelsAsync(movies);

            return(View(movieModels));
        }
예제 #3
0
        public void Can_run_simple_query()
        {
            // Arrange
            SetupQueryPipeline(pipelineService.PipelineContainer.AddQueryPipeline());

            // Act
            var result = pipelineService.Query <QueryObject>().With(q => q.SimpleQuery(10, 20));

            // Assert
            Assert.NotNull(result);
            Assert.Equal(2, result.Count);
            Assert.Equal(20, result[1]);
        }
예제 #4
0
 public async Task <IEnumerable <User> > GetUsersAsync([FromQuery] UserFilter filter)
 {
     return(await pipelineService.Query <UsersQueries>().With(q => q.GetUsersAsync(filter)));
 }
예제 #5
0
 public async Task <IEnumerable <Listing> > GetListingsAsync()
 {
     return(await pipelineService.Query <ListingsQueries>().With(q => q.GetListingsAsync()));
 }