public void Should_return_InternalError_if_error_code_is_integer_but_unknown() { // Given var errorService = new ErrorService(); var code = "-1"; // When var message = errorService.Decode(code); // Then message.ShouldBe("Unrecognised internal error"); }
public void Should_return_InternalError_if_error_code_is_not_valid_integer() { // Given var errorService = new ErrorService(); var code = "<invalid-code>"; // When var message = errorService.Decode(code); // Then message.ShouldBe("Unrecognised internal error"); }
public void Should_return_correct_error_message_for_the_requested_error_code() { // Given var errorService = new ErrorService(); var code = ((int)ErrorCode.UserNameTaken).ToString(); // When var message = errorService.Decode(code); // Then message.ShouldBe("The UserName has already been taken"); }
public void Should_return_valid_NancyResponse_containing_the_message_and_code_corresponding_to_the_requested_error() { // Given var errorService = new ErrorService(); var formatter = new DefaultResponseFormatter(A.Dummy<IRootPathProvider>(), A.Dummy<NancyContext>(), A.Dummy<IEnumerable<ISerializer>>()); var error = ErrorCode.UserNameTaken; // When var response = errorService.Generate(formatter, error); // Then response.ShouldNotBe(null); response.StatusCode.ShouldBe(HttpStatusCode.BadRequest); var contents = response.GetContents(); ((object)contents).ShouldNotBe(null); ((int)contents.ErrorCode).ShouldBe((int)error); ((string)contents.ErrorMessage).ShouldBe("The UserName has already been taken"); }