public async Task ReturnsBadRequestWithInvalidEvent() { var fixture = new Fixture(); var testShift = fixture.Build <NewShift>() .With(j => j.Duration, TimeSpan.FromHours(2)) .With(j => j.Event, string.Empty) .Create(); var body = JsonConvert.SerializeObject(testShift); var bodyArray = Encoding.UTF8.GetBytes(body); var bodyStream = new MemoryStream(bodyArray); var shiftService = new Mock <IShiftService>(MockBehavior.Strict).Object; var function = new LogShift(shiftService, AuthenticationHelperMock.GetAuthenticationHelper()); var request = new DefaultHttpRequest(new DefaultHttpContext()); request.Headers.Add("Authorization", AuthenticationHelperMock.GoodHeader); request.Body = bodyStream; var result = await function.Run(request, NullLogger.Instance); result.Should().BeOfType <BadRequestResult>(); }
public async Task ReturnsOkIfValidRequest() { var fixture = new Fixture(); var testId = fixture.Create <string>(); var testShift = fixture.Build <NewShift>() .With(j => j.Duration, TimeSpan.FromHours(2)) .Create(); var body = JsonConvert.SerializeObject(testShift); var bodyArray = Encoding.UTF8.GetBytes(body); var bodyStream = new MemoryStream(bodyArray); var shiftServiceMock = new Mock <IShiftService>(MockBehavior.Strict); shiftServiceMock.Setup(s => s.AddShift(AuthenticationHelperMock.GoodUserId, It.Is <NewShift>(j => j.Equals(testShift)))).ReturnsAsync(testId); var shiftService = shiftServiceMock.Object; var function = new LogShift(shiftService, AuthenticationHelperMock.GetAuthenticationHelper()); var request = new DefaultHttpRequest(new DefaultHttpContext()); request.Headers.Add("Authorization", AuthenticationHelperMock.GoodHeader); request.Body = bodyStream; var result = await function.Run(request, NullLogger.Instance); result.Should().BeOfType <OkResult>(); shiftServiceMock.Verify(s => s.AddShift(AuthenticationHelperMock.GoodUserId, It.Is <NewShift>(j => j.Equals(testShift)))); }
public async Task ReturnsUnauthorisedWithNoClaims() { var shiftService = new Mock <IShiftService>(MockBehavior.Strict).Object; var function = new LogShift(shiftService, AuthenticationHelperMock.GetAuthenticationHelper()); var request = new DefaultHttpRequest(new DefaultHttpContext()); var result = await function.Run(request, NullLogger.Instance); result.Should().BeOfType <UnauthorizedResult>(); }
public async Task ReturnsBadRequestWithInvalidJson() { var body = JsonConvert.SerializeObject("{ invalidjson }"); var bodyArray = Encoding.UTF8.GetBytes(body); var bodyStream = new MemoryStream(bodyArray); var shiftService = new Mock <IShiftService>(MockBehavior.Strict).Object; var function = new LogShift(shiftService, AuthenticationHelperMock.GetAuthenticationHelper()); var request = new DefaultHttpRequest(new DefaultHttpContext()); request.Headers.Add("Authorization", AuthenticationHelperMock.GoodHeader); request.Body = bodyStream; var result = await function.Run(request, NullLogger.Instance); result.Should().BeOfType <BadRequestResult>(); }