public RequiredAdapterTests()
        {
            attributes = new Dictionary <String, String>();
            adapter    = new RequiredAdapter(new RequiredAttribute());
            IModelMetadataProvider provider = new EmptyModelMetadataProvider();
            ModelMetadata          metadata = provider.GetMetadataForProperty(typeof(AllTypesView), nameof(AllTypesView.StringField));

            context = new ClientModelValidationContext(new ActionContext(), metadata, provider, attributes);
        }
        public void GetErrorMessage_Required()
        {
            IModelMetadataProvider     provider = new EmptyModelMetadataProvider();
            RequiredAdapter            adapter  = new RequiredAdapter(new RequiredAttribute());
            ModelMetadata              metadata = provider.GetMetadataForProperty(typeof(AdaptersModel), "Required");
            ModelValidationContextBase context  = new ModelValidationContextBase(new ActionContext(), metadata, provider);

            String expected = String.Format(Validations.Required, "Required");
            String actual   = adapter.GetErrorMessage(context);

            Assert.Equal(Validations.Required, adapter.Attribute.ErrorMessage);
            Assert.Equal(expected, actual);
        }
Esempio n. 3
0
        public void GetErrorMessage_Required()
        {
            IModelMetadataProvider     provider = new EmptyModelMetadataProvider();
            RequiredAdapter            adapter  = new RequiredAdapter(new RequiredAttribute());
            ModelMetadata              metadata = provider.GetMetadataForProperty(typeof(AllTypesView), "StringField");
            ModelValidationContextBase context  = new ModelValidationContextBase(new ActionContext(), metadata, provider);

            String expected = Validation.For("Required", context.ModelMetadata.PropertyName);
            String actual   = adapter.GetErrorMessage(context);

            Assert.Equal(Validation.For("Required"), adapter.Attribute.ErrorMessage);
            Assert.Equal(expected, actual);
        }