예제 #1
0
        public void Should_hydrate_properties()
        {
            var query = new SearchProjectsQuery("some text", 1, 100);

            query.Text.Should().Be("some text");
            query.Page.Should().Be(1);
            query.Records.Should().Be(100);
        }
예제 #2
0
        /// <inheritdoc />
        public IPaginatedResult <ProjectItemResult> Handle(SearchProjectsQuery query)
        {
            var repository = unitOfWork.CreateRepository();

            var queryable = repository.Get <ProjectAggregate>()
                            .Where(x => x.Acronym.Contains(query.Text));

            var items = queryable
                        .Skip(query.Records * (query.Page - 1))
                        .Take(query.Records)
                        .Select(x => new ProjectItemResult(x.Id, x.Acronym, x.Analyst.Display, x.Status.ToString(), x.TierLevel.ToString()))
                        .ToArray();

            return(new PaginatedResult <ProjectItemResult>(query.Page, queryable.Count(), items));
        }
        public IHttpActionResult Get(SearchProjectsQuery query)
        {
            var result = bus.Query <SearchProjectsQuery, IPaginatedResult <ProjectItemResult> >(query);

            return(Ok(result));
        }
 public void Initialize()
 {
     mockBus     = new Mock <IBus>();
     fakeCommand = new CreateProjectCommand(Guid.Empty, Guid.Empty, "fake", "fake", "fake", null);
     fakeQuery   = new SearchProjectsQuery("text", 1, 100);
 }