public void GetBinder_ModelTypeIsNullable_ReturnsNull() { // Arrange CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IModelBinder binder = binderProvider.GetBinder(null, typeof(int?)); // Assert Assert.Null(binder); }
public void GetBinder_ModelTypeIsGeneric_ReturnsNull() { // Arrange CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IModelBinder binder = binderProvider.GetBinder(null, typeof(Tuple <int>)); // Assert Assert.Null(binder); }
public void Create_ForNonSupportedTypes_ReturnsNull(Type modelType) { // Arrange var provider = new CollectionModelBinderProvider(); var context = new TestModelBinderProviderContext(modelType); // Act var result = provider.GetBinder(context); // Assert Assert.Null(result); }
public void GetBinder_ValueProviderDoesNotContainPrefix_ReturnsNull() { // Arrange ExtensibleModelBindingContext bindingContext = new ExtensibleModelBindingContext() { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(IEnumerable<int>)), ModelName = "foo", ValueProvider = new SimpleValueProvider() }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.IsNull(binder); }
public void GetBinder_ValueProviderDoesNotContainPrefix_ReturnsNull() { // Arrange ExtensibleModelBindingContext bindingContext = new ExtensibleModelBindingContext { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(IEnumerable <int>)), ModelName = "foo", ValueProvider = new SimpleValueProvider() }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.Null(binder); }
public void GetBinder_ModelTypeIsIncorrect_ReturnsNull() { // Arrange ExtensibleModelBindingContext bindingContext = new ExtensibleModelBindingContext() { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(int)), ModelName = "foo", ValueProvider = new SimpleValueProvider() { { "foo[0]", "42" }, } }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.IsNull(binder); }
public void GetBinder_CorrectModelTypeAndValueProviderEntries_ReturnsBinder() { // Arrange ExtensibleModelBindingContext bindingContext = new ExtensibleModelBindingContext() { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(IEnumerable<int>)), ModelName = "foo", ValueProvider = new SimpleValueProvider() { { "foo[0]", "42" }, } }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.IsInstanceOfType(binder, typeof(CollectionModelBinder<int>)); }
public void GetBinder_ValueProviderDoesNotContainPrefix_ReturnsNull() { // Arrange ModelBindingContext bindingContext = new ModelBindingContext { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(IEnumerable <int>)), ModelName = "foo", ValueProvider = new SimpleHttpValueProvider() }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IModelBinder binder = binderProvider.GetBinder(null, bindingContext.ModelType); bool bound = binder.BindModel(null, bindingContext); // Assert Assert.False(bound); }
public void GetBinder_ModelTypeIsIncorrect_ReturnsNull() { // Arrange ModelBindingContext bindingContext = new ModelBindingContext { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(int)), ModelName = "foo", ValueProvider = new SimpleHttpValueProvider { { "foo[0]", "42" }, } }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IModelBinder binder = binderProvider.GetBinder(null, bindingContext.ModelType); // Assert Assert.Null(binder); }
public void GetBinder_CorrectModelTypeAndValueProviderEntries_ReturnsBinder() { // Arrange ModelBindingContext bindingContext = new ModelBindingContext { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(IEnumerable <int>)), ModelName = "foo", ValueProvider = new SimpleHttpValueProvider { { "foo[0]", "42" }, } }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IModelBinder binder = binderProvider.GetBinder(null, bindingContext.ModelType); // Assert Assert.IsType <CollectionModelBinder <int> >(binder); }
public void Create_ForSupportedType_ReturnsBinder() { // Arrange var provider = new CollectionModelBinderProvider(); var context = new TestModelBinderProviderContext(typeof(List <int>)); context.OnCreatingBinder(m => { Assert.Equal(typeof(int), m.ModelType); return(Mock.Of <IModelBinder>()); }); // Act var result = provider.GetBinder(context); // Assert var binder = Assert.IsType <CollectionModelBinder <int> >(result); Assert.True(binder.AllowValidatingTopLevelNodes); }
public void GetBinder_CorrectModelTypeAndValueProviderEntries_ReturnsBinder() { // Arrange ExtensibleModelBindingContext bindingContext = new ExtensibleModelBindingContext() { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(IEnumerable <int>)), ModelName = "foo", ValueProvider = new SimpleValueProvider() { { "foo[0]", "42" }, } }; CollectionModelBinderProvider binderProvider = new CollectionModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.IsInstanceOfType(binder, typeof(CollectionModelBinder <int>)); }
public void Create_ForSupportedTypes_ReturnsBinder(Type modelType) { // Arrange var provider = new CollectionModelBinderProvider(); var context = new TestModelBinderProviderContext(modelType); Type elementType = null; context.OnCreatingBinder(m => { Assert.Equal(typeof(int), m.ModelType); elementType = m.ModelType; return(Mock.Of <IModelBinder>()); }); // Act var result = provider.GetBinder(context); // Assert Assert.NotNull(elementType); Assert.IsType <CollectionModelBinder <int> >(result); }
public EmptyCollectionModelBinderProvider(CollectionModelBinderProvider originalProvider) { this.originalProvider = originalProvider; }