public async Task CanUpdateTraining() { var authorizedClient = SystemTestExtension.GetTokenAuthorizeHttpClient(_factory); var updateTrainingCommand = new UpdateTrainingCommand { Id = 1, TrainingSeriesId = 1, Name = "trainingSample", Description = "sampleDescription", TrainingCategoryId = 1, BeginDateTime = DateTimeOffset.Now, EndDateTime = DateTimeOffset.Now.AddDays(5) }; var serializedUpdateCommand = JsonConvert.SerializeObject(updateTrainingCommand); // The endpoint or route of the controller action. var httpResponse = await authorizedClient.PutAsync(requestUri : "/Training", content : new StringContent(content: serializedUpdateCommand, encoding: Encoding.UTF8, mediaType: StringConstants.ApplicationJson)); //Must be successful httpResponse.EnsureSuccessStatusCode(); Assert.True(httpResponse.IsSuccessStatusCode); Assert.Equal(HttpStatusCode.OK, httpResponse.StatusCode); }
public async Task <IActionResult> UpdateTraining([FromBody] UpdateTrainingRequest request) { var command = new UpdateTrainingCommand( id: request.Id, runnerId: request.RunnerId, timeToDo: request.TimeToDo, details: request.Details, comments: request.Comments ); await commandSender.SendAsync(command); return(Ok()); }
public async Task ShouldGetModelForValidInformation() { var command = new UpdateTrainingCommand { Id = _trainingId, UpdatedBy = _adminUserId, TenantId = _tenantId, TrainingSeriesId = _trainingSeriesId, Name = "trainingSample", Description = "sampleDescription", TrainingCategoryId = _trainingCategoryId, BeginDateTime = DateTimeOffset.Now, EndDateTime = DateTimeOffset.Now.AddDays(5), }; var trainingResponseModel = await _commandHandler.Handle(command, CancellationToken.None); Assert.Null(trainingResponseModel.Errors); Assert.True(trainingResponseModel.Items.Any()); }
public async Task <ActionResult <ResponseModel <UpdateTrainingModel> > > Put([FromBody] UpdateTrainingCommand command) { try { command.UpdatedBy = Claims[ClaimTypes.Sid].ToInt(); command.TenantId = Guid.Parse(Claims[ClaimTypes.UserData]); var updateTrainingModel = await Mediator.Send(command); return(Ok(updateTrainingModel)); } catch (NotFoundException) { return(NotFound()); } catch (ObjectAlreadyExistsException ex) { return(Conflict(new ResponseModel <UpdateTrainingModel>(new Error(HttpStatusCode.Conflict, ex)))); } catch { return(StatusCode(HttpStatusCode.InternalServerError.ToInt())); } }