public void UpdateTimespanNoName() { HelpdeskFacade helpdeskFacade = new HelpdeskFacade(); AddTimeSpanRequest addTimeSpanRequest = new AddTimeSpanRequest() { HelpdeskId = 1, StartDate = DateTime.Today, EndDate = DateTime.Today.AddYears(1), Name = AlphaNumericStringGenerator.GetString(10) }; AddTimeSpanResponse addTimeSpanResponse = helpdeskFacade.AddTimeSpan(addTimeSpanRequest); Assert.AreEqual(HttpStatusCode.OK, addTimeSpanResponse.Status); UpdateTimeSpanRequest updateTimespanRequest = new UpdateTimeSpanRequest() { StartDate = new DateTime(2019, 01, 01), EndDate = new DateTime(2019, 06, 01), }; UpdateTimeSpanResponse updateTimespanResponse = helpdeskFacade.UpdateTimeSpan(addTimeSpanResponse.SpanId, updateTimespanRequest); Assert.AreEqual(HttpStatusCode.BadRequest, updateTimespanResponse.Status); }
/// <summary> /// This method is responsible for updating a specific timespan's information /// </summary> /// <param name="id">The SpanId of the timespan to be updated</param> /// <param name="request">The timespan's new information</param> /// <returns>The response that indicates if the operation was a success</returns> public UpdateTimeSpanResponse UpdateTimeSpan(int id, UpdateTimeSpanRequest request) { s_logger.Info("Updating timespan..."); UpdateTimeSpanResponse response = new UpdateTimeSpanResponse(); try { response = (UpdateTimeSpanResponse)request.CheckValidation(response); if (response.Status == HttpStatusCode.BadRequest) { return(response); } var dataLayer = new HelpdeskDataLayer(); //will implement unique check when get timespan by name method is implemented bool result = dataLayer.UpdateTimeSpan(id, request); if (result == false) { throw new NotFoundException("Unable to find timespan!"); } response.Result = result; response.Status = HttpStatusCode.OK; } catch (NotFoundException ex) { s_logger.Error(ex, "Unable to find timespan!"); response.Status = HttpStatusCode.NotFound; response.StatusMessages.Add(new StatusMessage(HttpStatusCode.NotFound, "Unable to find timespan!")); } catch (DuplicateNameException ex) { s_logger.Error(ex, "Timespan name already exists!"); response.Status = HttpStatusCode.BadRequest; response.StatusMessages.Add(new StatusMessage(HttpStatusCode.BadRequest, "Timespan name already exists!")); } catch (Exception ex) { s_logger.Error(ex, "Unable to update timespan!"); response.Status = HttpStatusCode.InternalServerError; response.StatusMessages.Add(new StatusMessage(HttpStatusCode.InternalServerError, "Unable to update timespan!")); } return(response); }
public void UpdateTimespanNotFound() { HelpdeskFacade helpdeskFacade = new HelpdeskFacade(); UpdateTimeSpanRequest updateTimespanRequest = new UpdateTimeSpanRequest() { Name = AlphaNumericStringGenerator.GetString(10), StartDate = new DateTime(2019, 08, 01), EndDate = new DateTime(2019, 11, 01) }; UpdateTimeSpanResponse updateTimespanResponse = helpdeskFacade.UpdateTimeSpan(-1, updateTimespanRequest); Assert.AreEqual(HttpStatusCode.NotFound, updateTimespanResponse.Status); }
public void UpdateTimespan() { // Fill empty string parameters "" with auto-generated string. testEntityFactory.PopulateEmptyStrings = true; // Add test helpdesk. TestDataHelpdesk helpdeskData = testEntityFactory.AddHelpdesk(); // Check that helpdesk was created successfully. Assert.AreEqual(HttpStatusCode.OK, helpdeskData.Response.Status); Assert.IsTrue(helpdeskData.Response.HelpdeskID > 0); // Add timespan. TestDataTimeSpan timespanData = testEntityFactory.AddTimeSpan(helpdeskData.Response.HelpdeskID); // Check that timespan was created successfully. Assert.AreEqual(HttpStatusCode.OK, timespanData.Response.Status); Assert.IsTrue(timespanData.Response.SpanId > 0); UpdateTimeSpanRequest updateTimespanRequest = new UpdateTimeSpanRequest() { Name = AlphaNumericStringGenerator.GetString(10), StartDate = new DateTime(2019, 01, 01), EndDate = new DateTime(2019, 06, 01), }; UpdateTimeSpanResponse updateTimespanResponse = testEntityFactory.HelpdeskFacade.UpdateTimeSpan(timespanData.Response.SpanId, updateTimespanRequest); Assert.AreEqual(HttpStatusCode.OK, updateTimespanResponse.Status); Assert.IsTrue(updateTimespanResponse.Result); using (helpdesksystemContext context = new helpdesksystemContext()) { var timespan = context.Timespans.FirstOrDefault(u => u.SpanId == timespanData.Response.SpanId); Assert.AreEqual(timespan.StartDate, updateTimespanRequest.StartDate); Assert.AreEqual(timespan.Name, updateTimespanRequest.Name); Assert.AreEqual(timespan.EndDate, updateTimespanRequest.EndDate); } }