public static void HandleExceptions_Log_Not_Have_Effect_And_Returns_Null_When_Context_Is_Null() { // arrange var logger = new CommunicationLoggerMock(); var jsonSerializer = JsonUtility.CamelCaseJsonSerializerSettings; var exception = new BadRequestException(); NancyContext context = null; // act var response = PipelinesExtension.HandleExceptions(context, exception, jsonSerializer, logger); // assert Assert.Null(response); Assert.Empty(logger.Logs); }
public static void HandleExceptions_Log_Exception() { // arrange var logger = new CommunicationLoggerMock(); var jsonSerializer = JsonUtility.CamelCaseJsonSerializerSettings; var exception = new Exception(); var context = NancyContextMock.Create(); // act var response = PipelinesExtension.HandleExceptions(context, exception, jsonSerializer, logger); // assert Assert.Null(response); Assert.Single(logger.Logs); Assert.True(bool.Parse(logger.Logs.First().Items["WorksWithException"].ToString())); }
public static void HandleExceptions_Log_ApiException_When_Content_Is_Null() { // arrange var logger = new CommunicationLoggerMock(); var jsonSerializer = JsonUtility.CamelCaseJsonSerializerSettings; var exception = new BadRequestException(); var context = NancyContextMock.Create(); // act var response = PipelinesExtension.HandleExceptions(context, exception, jsonSerializer, logger); // assert Assert.NotNull(response); Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode); Assert.Single(logger.Logs); Assert.True(bool.Parse(logger.Logs.First().Items["WorksWithoutException"].ToString())); }
public static void HandleExceptions_Log_ApiException_When_Content_Is_Not_Null_And_Context_Response_Is_Null() { // arrange var logger = new CommunicationLoggerMock(); var jsonSerializer = JsonUtility.CamelCaseJsonSerializerSettings; var errors = ErrorsResponse.WithSingleError("someerror", "someproperty"); var exception = new BadRequestException(errors); NancyContext context = NancyContextMock.Create(); context.Response = null; // act var response = PipelinesExtension.HandleExceptions(context, exception, jsonSerializer, logger); // assert Assert.NotNull(response); Assert.Equal("application/json", response.ContentType); Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode); Assert.Single(logger.Logs); Assert.True(bool.Parse(logger.Logs.First().Items["WorksWithoutException"].ToString())); }