// Interface methods public async Task <GetTimeSheetResponse> GetTimeSheet(GetTimeSheetRequest request) { // TODO: [TESTS] (TimeSheetService.GetTimeSheet) Add tests // ReSharper disable once UseObjectOrCollectionInitializer var response = new GetTimeSheetResponse(); var clientId = request.ClientId; var from = request.StartDate; var to = request.EndDate; response.StartDate = from; response.EndDate = to; response.DayCount = (to - from).Days; response.Projects = (await _entriesRepo.GetReferencedProjects(clientId, from, to)) .AsQueryable() .Select(ProjectDto.Projection) .ToList(); response.Products = (await _entriesRepo.GetReferencedProducts(clientId, from, to)) .AsQueryable() .Select(ProductDto.Projection) .ToList(); response.Entries = (await _entriesRepo.GetEntries(request.ClientId, from, to)) .AsQueryable() .Select(TimeSheetEntryDto.Projection) .ToList(); return(response); }
public async Task <ActionResult <GetTimeSheetResponse> > GetTimeSheet( [FromBody] GetTimeSheetRequest timeSheetRequest) { // TODO: [TESTS] (TimeSheetController.GetTimeSheet) Add tests var response = new BaseResponse <GetTimeSheetResponse>() .WithResponse(await _timeSheetService.GetTimeSheet(timeSheetRequest)); return(ProcessResponse(response)); }
public void GetTimeSheetHandler_WhenCalled_ItShouldReturnGetTimeSheetReponse() { // Arrange var request = new GetTimeSheetRequest(1); _subject = new GetTimeSheetHandler(request, _timeSheetContext); // Act var result = _subject.Handle(); // Assert Assert.IsAssignableFrom <GetTimeSheetReponse>(result); }
public void GetTimeSheetHandler_WhenCalledWithInvalidId_ItShouldReturnGetTimeSheetReponseWithNoTimeSheet() { // Arrange var request = new GetTimeSheetRequest(InValidTimeSheetId); _subject = new GetTimeSheetHandler(request, _timeSheetContext); WithTimeSheets(); // Act var result = _subject.Handle(); // Assert Assert.False(result.TimeSheet.HasValue); }
public ActionResult <TimeSheet> Get(int id) { // TODO: Dtos something something? return(Execute(() => { var request = new GetTimeSheetRequest(id); var response = RequestHandlerFactory .Get <GetTimeSheetRequest, GetTimeSheetReponse>(request) .Handle(); return response.TimeSheet.ValueOr(() => throw new EntityNotFoundException()); })); }
public void TimeSheetController_WhenGetByIdNotFound_ItShouldReturnNotFoundResult() { // Arrange var request = new GetTimeSheetRequest(ValidId); WithHandlerSetup(request, () => new GetTimeSheetReponse(Option.None <TimeSheet>())); // Act var result = _subject.Get(ValidId); // Assert Assert.IsAssignableFrom <ActionResult <TimeSheet> >(result); Assert.IsAssignableFrom <NotFoundObjectResult>(result.Result); _mocker.VerifyAll(); }
public void OnGet(int id) { PageTitle = "Edit Timesheet"; Execute(() => { var request = new GetTimeSheetRequest(id); var response = RequestHandlerFactory .Get <GetTimeSheetRequest, GetTimeSheetReponse>(request) .Handle(); TimeSheet = response .TimeSheet .ValueOr(() => throw new BusinessLogicException("Timesheet not found")); }); }