public void Should_be_able_to_register_validation_provider_and_model_metadata() { var modelMetadataRegistry = new ModelMetadataRegistry(); var testRegistrar = new ModelMetadataRegistrar(modelMetadataRegistry); testRegistrar.ConstructMetadataUsing(() => new[] { new RegistrarTestDummyObjectConfiguration() }); testRegistrar.Register(); Assert.IsType <ExtendedModelMetadataProvider>(ModelMetadataProviders.Current); Assert.IsType <CompositeModelValidatorProvider>(ModelValidatorProviders.Providers[0]); var modelMetadataItem = modelMetadataRegistry.GetModelPropertiesMetadata(typeof(RegistrarTestDummyObject)); Assert.NotNull(modelMetadataItem); Assert.NotEmpty(modelMetadataItem); }
public ModelMetadataRegistrarTests() { ModelMetadataProviders.Current = new DataAnnotationsModelMetadataProvider(); ModelValidatorProviders.Providers.Clear(); buildManager = new Mock<IBuildManager>(); registry = new Mock<IModelMetadataRegistry>(); resolver = new Mock<IDependencyResolver>(); registrar = new ModelMetadataRegistrar(resolver.Object); var configuration1 = new Mock<IModelMetadataConfiguration>(); var configuration2 = new Mock<IModelMetadataConfiguration>(); resolver.Setup(a => a.GetService(typeof(IBuildManager))).Returns(buildManager.Object); resolver.Setup(a => a.GetService(typeof(IModelMetadataRegistry))).Returns(registry.Object); resolver.Setup(a => a.GetServices(typeof(IModelMetadataConfiguration))).Returns(new[] { configuration1.Object, configuration2.Object }); registry.Setup(r => r.RegisterModelProperties(It.IsAny<Type>(), It.IsAny<IDictionary<string, ModelMetadataItem>>())); buildManager.SetupGet(bm => bm.ConcreteTypes).Returns(new[] { new Mock<IModelMetadataConfiguration>().Object.GetType(), new Mock<IModelMetadataConfiguration>().Object.GetType() }); }