public void CreateAgendaRequestValidator_SalaDoesNotExist_ValidationFail() { var request = new CreateAgendaRequest { Titulo = "Agendamento qualquer", HorarioInicio = new DateTime(2019, 08, 14), HorarioFim = new DateTime(2019, 08, 19), SalaId = -1 }; var validator = new CreateAgendaRequestValidator(agendaService, salaService, mapper); var result = validator.Validate(request); Assert.IsFalse(result.IsValid); }
public void CreateAgendaRequestValidator_TituloNull_ValidationFail() { var request = new CreateAgendaRequest { Titulo = "", HorarioInicio = new DateTime(2019, 08, 14), HorarioFim = new DateTime(2019, 08, 15), SalaId = 1 }; var validator = new CreateAgendaRequestValidator(agendaService, salaService, mapper); var result = validator.Validate(request); Assert.IsFalse(result.IsValid); }
public async Task <IActionResult> CreateAsync([FromBody] CreateAgendaRequest agendaRequest) { var agenda = await agendaService.AddAsync(mapper.Map <Agenda>(agendaRequest)); if (agenda == null) { var errorResponse = new ErrorResponse(); errorResponse.Errors.Add(new ErrorData { Message = "Não foi possivel criar um agendamento" }); return(BadRequest(errorResponse)); } var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUri = baseUrl + "/" + ApiRoutes.Agenda.Get.Replace("{id}", agenda.Id.ToString()); return(Created(locationUri, new { })); }