public void IValidatableObjectGetsAValidator() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var mockValidatable = new Mock <IValidatableObject>(); var metadata = _metadataProvider.GetMetadataForType(() => null, mockValidatable.Object.GetType()); // Act IEnumerable <ModelValidator> validators = provider.GetValidators(metadata, _noValidatorProviders); // Assert Assert.Single(validators); }
public void UnknownValidationAttributeGetsDefaultAdapter() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var metadata = _metadataProvider.GetMetadataForType(() => null, typeof(DummyClassWithDummyValidationAttribute)); // Act IEnumerable <ModelValidator> validators = provider.GetValidators(metadata, _noValidatorProviders); // Assert var validator = validators.Single(); Assert.IsType <DataAnnotationsModelValidator>(validator); }
public void RegisterDefaultValidatableObjectAdapter() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var metadata = _metadataProvider.GetMetadataForType(() => null, typeof(MyValidatableClass)); provider.RegisterDefaultValidatableObjectAdapter(typeof(MyValidatableAdapter)); // Act var result = provider.GetValidators(metadata, _noValidatorProviders).Single(); // Assert Assert.IsType <MyValidatableAdapter>(result); }
public void DoesNotReadPropertyValue() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var model = new ObservableModel(); ModelMetadata metadata = _metadataProvider.GetMetadataForProperty(() => model.TheProperty, typeof(ObservableModel), "TheProperty"); // Act ModelValidator[] validators = provider.GetValidators(metadata, _noValidatorProviders).ToArray(); ModelValidationResult[] results = validators.SelectMany(o => o.Validate(model)).ToArray(); // Assert Assert.Empty(validators); Assert.False(model.PropertyWasRead()); }
public void RegisterDefaultValidatableObjectAdapterFactory() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var metadata = _metadataProvider.GetMetadataForType(() => null, typeof(MyValidatableClass)); ModelValidator validator = new Mock <ModelValidator>(metadata, _noValidatorProviders).Object; DataAnnotationsValidatableObjectAdapterFactory factory = delegate { return(validator); }; provider.RegisterDefaultValidatableObjectAdapterFactory(factory); // Act var result = provider.GetValidators(metadata, _noValidatorProviders).Single(); // Assert Assert.Same(validator, result); }
public void DoesNotReadPropertyValue() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var model = new ObservableModel(); ModelMetadata metadata = _metadataProvider.GetMetadataForProperty(() => model.TheProperty, typeof(ObservableModel), "TheProperty"); // Act ModelValidator[] validators = provider.GetValidators(metadata, _noValidatorProviders).ToArray(); ModelValidationResult[] results = validators.SelectMany(o => o.Validate(metadata, model)).ToArray(); // Assert Assert.Empty(validators); Assert.False(model.PropertyWasRead()); }
public void IValidatableObjectGetsAValidator() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var mockValidatable = new Mock<IValidatableObject>(); var metadata = _metadataProvider.GetMetadataForType(() => null, mockValidatable.Object.GetType()); // Act IEnumerable<ModelValidator> validators = provider.GetValidators(metadata, _noValidatorProviders); // Assert Assert.Single(validators); }
public void UnknownValidationAttributeGetsDefaultAdapter() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var metadata = _metadataProvider.GetMetadataForType(() => null, typeof(DummyClassWithDummyValidationAttribute)); // Act IEnumerable<ModelValidator> validators = provider.GetValidators(metadata, _noValidatorProviders); // Assert var validator = validators.Single(); Assert.IsType<DataAnnotationsModelValidator>(validator); }
public void RegisterDefaultValidatableObjectAdapterFactory() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var metadata = _metadataProvider.GetMetadataForType(() => null, typeof(MyValidatableClass)); ModelValidator validator = new Mock<ModelValidator>(_noValidatorProviders).Object; DataAnnotationsValidatableObjectAdapterFactory factory = delegate { return validator; }; provider.RegisterDefaultValidatableObjectAdapterFactory(factory); // Act var result = provider.GetValidators(metadata, _noValidatorProviders).Single(); // Assert Assert.Same(validator, result); }
public void RegisterDefaultValidatableObjectAdapter() { // Arrange var provider = new DataAnnotationsModelValidatorProvider(); var metadata = _metadataProvider.GetMetadataForType(() => null, typeof(MyValidatableClass)); provider.RegisterDefaultValidatableObjectAdapter(typeof(MyValidatableAdapter)); // Act var result = provider.GetValidators(metadata, _noValidatorProviders).Single(); // Assert Assert.IsType<MyValidatableAdapter>(result); }