public LocalizedModelValidatorProviderTests() { _stringProvider = new Mock <IValidationMessageDataSource>(); ValidationMessageProviders.Clear(); ValidationMessageProviders.Add(_stringProvider.Object); _provider = new LocalizedModelValidatorProvider(); }
public void DefaultMessage() { ValidationMessageProviders.Clear(); ValidationMessageProviders.Add(new DataAnnotationDefaultStrings()); var model = new TestModel(); var validator = GetValidator(model, "Required"); var actual = validator.Validate(model).First().Message; Assert.Equal("The Required field is required.", actual); }
public void CompareAttribute() { ValidationMessageProviders.Clear(); ValidationMessageProviders.Add(new MvcDataSource()); var model = new TestModel(); model.Compare2 = "Differ"; model.Compare1 = "Aaa"; var validator = GetValidator(model, "Compare1"); var actual = validator.Validate(model).First().Message; Assert.Equal("The Compare1 and Compare2 fields to not match.", actual); }
public void RegEx() { ValidationMessageProviders.Clear(); ValidationMessageProviders.Add(new DataAnnotationDefaultStrings()); var model = new TestModel { RegEx = "word" }; var validator = GetValidator(model, "RegEx"); var actual = validator.Validate(model).First().Message; // regex can't be identified in the DataAnnotations resource file :( Assert.Equal("[en-US: RegularExpression]", actual); }
public static void RegisterValidators() { var stringProvider = new ResourceStringProvider(Resources.LocalizedStrings.ResourceManager); ModelMetadataProviders.Current = new LocalizedModelMetadataProvider(stringProvider); ModelValidatorProviders.Providers.Clear(); ValidationMessageProviders.Clear(); ValidationMessageProviders.Add(new MvcDataSource()); ValidationMessageProviders.Add(new DataAnnotationDefaultStrings()); ValidationMessageProviders.Add(new GriffinStringsProvider(stringProvider)); var validatorProvider = new LocalizedModelValidatorProvider(); ModelValidatorProviders.Providers.Add(validatorProvider); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); var stringProvider = new ResourceStringProvider(Resources.Resources.ResourceManager); System.Web.Mvc.ModelMetadataProviders.Current = new LocalizedModelMetadataProvider(stringProvider); ValidationMessageProviders.Clear(); ValidationMessageProviders.Add(new GriffinStringsProvider(stringProvider)); // the rest ValidationMessageProviders.Add(new MvcDataSource()); //mvc attributes ValidationMessageProviders.Add(new DataAnnotationDefaultStrings()); //data annotation attributes System.Web.Mvc.ModelValidatorProviders.Providers.Clear(); System.Web.Mvc.ModelValidatorProviders.Providers.Add(new LocalizedModelValidatorProvider()); DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false; }