public void Create_returns_BadRequest_when_minutes_is_greater_than_10() { var sut = new TraceController(null, null, null); var result = (BadRequestErrorMessageResult)sut.Create(new StartTrace() { LinkId = Guid.NewGuid(), Minutes = 11 }); result.Should().NotBeNull(); result.Message.Should().Be("Tracking can only be enabled for ten minutes at most."); }
public void Create_returns_BadRequest_when_minutes_is_less_than_1() { var sut = new TraceController(null, null, null); var result = (BadRequestErrorMessageResult)sut.Create(new StartTrace() { LinkId = Guid.NewGuid(), Minutes = 0 }); result.Should().NotBeNull(); result.Message.Should().Be("Tracking must be enabled for one minute at least."); }
public void Create_returns_Created_result_with_properly_set_DTO() { var traceRepositoryMock = new Mock <ITraceRepository>(); var sut = new TraceController(traceRepositoryMock.Object, null, null); CreatedNegotiatedContentResult <TraceConfiguration> result; var startDate = DateTime.UtcNow; var linkId = Guid.NewGuid(); traceRepositoryMock.Setup(t => t.Create(It.IsAny <TraceConfiguration>())); result = (CreatedNegotiatedContentResult <TraceConfiguration>)sut.Create(new StartTrace() { Minutes = 5, LinkId = linkId }); traceRepositoryMock.VerifyAll(); result.Should().NotBeNull(); result.Content.StartDate.Should().BeOnOrAfter(startDate).And.BeOnOrBefore(DateTime.UtcNow); result.Content.EndDate.Should().BeOnOrAfter(startDate.AddMinutes(5)).And.BeBefore(DateTime.UtcNow.AddMinutes(5)); result.Content.LinkId.Should().Be(linkId); }