public void Create_ForNonDictionaryType_ReturnsNull(Type modelType) { // Arrange var provider = new DictionaryModelBinderProvider(); 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(IDictionary<int, string>)), ModelName = "foo", ValueProvider = new SimpleValueProvider() }; DictionaryModelBinderProvider binderProvider = new DictionaryModelBinderProvider(); // 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(IDictionary <int, string>)), ModelName = "foo", ValueProvider = new SimpleValueProvider() }; DictionaryModelBinderProvider binderProvider = new DictionaryModelBinderProvider(); // 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" }, } }; DictionaryModelBinderProvider binderProvider = new DictionaryModelBinderProvider(); // 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(IDictionary<int, string>)), ModelName = "foo", ValueProvider = new SimpleValueProvider() { { "foo[0]", "42" }, } }; DictionaryModelBinderProvider binderProvider = new DictionaryModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.IsInstanceOfType(binder, typeof(DictionaryModelBinder<int, string>)); }
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" }, } }; DictionaryModelBinderProvider binderProvider = new DictionaryModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.Null(binder); }
public void GetBinder_CorrectModelTypeAndValueProviderEntries_ReturnsBinder() { // Arrange ExtensibleModelBindingContext bindingContext = new ExtensibleModelBindingContext { ModelMetadata = new EmptyModelMetadataProvider().GetMetadataForType(null, typeof(IDictionary <int, string>)), ModelName = "foo", ValueProvider = new SimpleValueProvider { { "foo[0]", "42" }, } }; DictionaryModelBinderProvider binderProvider = new DictionaryModelBinderProvider(); // Act IExtensibleModelBinder binder = binderProvider.GetBinder(null, bindingContext); // Assert Assert.IsType <DictionaryModelBinder <int, string> >(binder); }