public async Task HealthControllerHealthViewReturnsNotAcceptable(string mediaTypeName) { // Arrange bool expectedResult = true; var controller = BuildHealthController(mediaTypeName); A.CallTo(() => FakeJobGroupDocumentService.PingAsync()).Returns(expectedResult); // Act var result = await controller.HealthView().ConfigureAwait(false); // Assert var statusResult = Assert.IsType <StatusCodeResult>(result); A.Equals((int)HttpStatusCode.NotAcceptable, statusResult.StatusCode); controller.Dispose(); }
public async Task HealthControllerViewJsonReturnsSuccess(string mediaTypeName) { // Arrange bool expectedResult = true; var controller = BuildHealthController(mediaTypeName); A.CallTo(() => FakeJobGroupDocumentService.PingAsync()).Returns(expectedResult); // Act var result = await controller.HealthView().ConfigureAwait(false); // Assert var jsonResult = Assert.IsType <OkObjectResult>(result); _ = Assert.IsAssignableFrom <IList <HealthItemViewModel> >(jsonResult.Value); controller.Dispose(); }
public async Task HealthControllerHealthReturnsServiceUnavailableWhenUnhealthy() { // Arrange bool expectedResult = false; var controller = BuildHealthController(MediaTypeNames.Application.Json); A.CallTo(() => FakeJobGroupDocumentService.PingAsync()).Returns(expectedResult); // Act var result = await controller.Health().ConfigureAwait(false); // Assert A.CallTo(() => FakeJobGroupDocumentService.PingAsync()).MustHaveHappenedOnceExactly(); var statusResult = Assert.IsType <StatusCodeResult>(result); A.Equals((int)HttpStatusCode.ServiceUnavailable, statusResult.StatusCode); controller.Dispose(); }
public async Task HealthControllerHealthReturnsSuccessWhenHealthy() { // Arrange bool expectedResult = true; var controller = BuildHealthController(MediaTypeNames.Application.Json); A.CallTo(() => FakeJobGroupDocumentService.PingAsync()).Returns(expectedResult); // Act var result = await controller.Health().ConfigureAwait(false); // Assert A.CallTo(() => FakeJobGroupDocumentService.PingAsync()).MustHaveHappenedOnceExactly(); var jsonResult = Assert.IsType <OkObjectResult>(result); var models = Assert.IsAssignableFrom <List <HealthItemViewModel> >(jsonResult.Value); models.Count.Should().BeGreaterThan(0); models.First().Service.Should().NotBeNullOrWhiteSpace(); models.First().Message.Should().NotBeNullOrWhiteSpace(); controller.Dispose(); }