public void Ctor_should_set_empty_property_exceptions_list_if_none_are_provided() { //When var exception = new ModelBindingException(typeof (string)); //Then exception.PropertyBindingExceptions.Any().ShouldBeFalse(); }
public void Message_should_contain_bound() { //When var exception = new ModelBindingException(typeof (string)); //then exception.Message.ShouldEqual(String.Format("Unable to bind to type: {0}", typeof(string))); }
public void Message_should_contain_only_bound_type_if_no_property_is_provided() { //When var exception = new ModelBindingException(typeof (string)); //Then exception.Message.ShouldEqual("Unable to bind to type: " + typeof(string)); }
public void Message_should_contain_bound_type_and_property_name() { //When var exception = new ModelBindingException(typeof (string), "PropName"); //then exception.Message.ShouldEqual(String.Format("Unable to bind to type: {0}; Property: {1}", typeof(string), "PropName")); }
public void Ctor_should_set_property_exceptions_and_bound_type() { //When var propertyExceptions = new List<PropertyBindingException>(); var exception = new ModelBindingException(typeof (string), propertyExceptions); //Then exception.BoundType.ShouldBeOfType<string>(); exception.PropertyBindingExceptions.ShouldBeSameAs(propertyExceptions); }
public void Ctor_should_set_property_name_and_bound_type_and_inner_exception() { //When var inner = new Exception(); var exception = new ModelBindingException(typeof (string), "Length", inner); //Then exception.BoundType.ShouldBeOfType<string>(); exception.PropertyName.ShouldEqual("Length"); exception.InnerException.ShouldBeSameAs(inner); }
public void GivenExceptionIsModelBindingException_WhenRunningPipeline_ThenReturnsBadRequestWithExceptionDetails() { var modelBindingException = new ModelBindingException(typeof(object), new[] { new PropertyBindingException("SomeProperty", "1") }); var expectedExceptionModel = modelBindingException.Message; var result = _sut.Invoke(A.Dummy<NancyContext>(), modelBindingException) as Negotiator; result.Should().NotBeNull(); result.NegotiationContext.StatusCode.Should().Be(HttpStatusCode.BadRequest); var actualExceptionModel = result.NegotiationContext.GetModelForMediaRange("application/json") as object; actualExceptionModel.Should().BeAssignableTo<string>(); ((string)actualExceptionModel).ShouldBeEquivalentTo(expectedExceptionModel); }