public ActionResult <ICollection <TeamDTO> > GetAllTeams() { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { string name = HttpContext.Request.Query["name"].ToString(); var orderParam = HttpContext.Request.Query["order"].ToString(); Order order = Order.Ascending; if (!string.IsNullOrWhiteSpace(orderParam)) { order = (Order)Enum.Parse(typeof(Order), orderParam); } var filter = new TeamFilterDTO { Name = name, Order = order }; var teams = mapper.Map <TeamDTO[]>(teamBusinessLogic.GetAll(filter)); return(Ok(teams)); } catch (Exception e) { return(StatusCode(500, e.Message)); } }
public void GetAllFilterByNameDescendingTest() { TeamFilterDTO filter = new TeamFilterDTO { Name = "Nacional", Order = Order.Descending }; mockTeamRepo.Setup(r => r.Get(It.IsAny <Expression <Func <Team, bool> > >(), It.IsAny <Func <IQueryable <Team>, IOrderedQueryable <Team> > >(), "")).Returns(teamList); teamBL.GetAll(filter); mockTeamRepo.Verify(x => x.Get(It.IsAny <Expression <Func <Team, bool> > >(), It.IsAny <Func <IQueryable <Team>, IOrderedQueryable <Team> > >(), ""), Times.Once()); }
public IEnumerable <Team> GetAll(TeamFilterDTO filter = null) { if (filter == null) { return(repository.Get(null, null, "")); } if (string.IsNullOrEmpty(filter.Name)) { return(filter.Order == Order.Descending ? repository.Get(null, (q => q.OrderByDescending(t => t.Name)), "") : repository.Get(null, (q => q.OrderBy(t => t.Name)), "")); } else { return(repository.Get(t => t.Name == filter.Name, (q => q.OrderBy(t => t.Name)), "")); } }