public void GetValidators() { // Arrange ModelMetadata metadata = GetMetadata(); ControllerContext controllerContext = new ControllerContext(); SimpleModelValidator[] allValidators = new SimpleModelValidator[] { new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator() }; Mock <ModelValidatorProvider> provider1 = new Mock <ModelValidatorProvider>(); provider1.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[0], allValidators[1] }); Mock <ModelValidatorProvider> provider2 = new Mock <ModelValidatorProvider>(); provider2.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[2], allValidators[3], allValidators[4] }); ModelValidatorProviderCollection collection = new ModelValidatorProviderCollection(); collection.Add(provider1.Object); collection.Add(provider2.Object); // Act IEnumerable <ModelValidator> returnedValidators = collection.GetValidators(metadata, controllerContext); // Assert CollectionAssert.AreEqual(allValidators, returnedValidators.ToArray()); }
public void GetValidatorsDelegatesToResolver() { // Arrange SimpleModelValidator[] allValidators = new SimpleModelValidator[] { new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator() }; ModelMetadata metadata = GetMetadata(); ControllerContext controllerContext = new ControllerContext(); Mock <ModelValidatorProvider> resolverProvider1 = new Mock <ModelValidatorProvider>(); resolverProvider1.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[0], allValidators[1] }); Mock <ModelValidatorProvider> resolverprovider2 = new Mock <ModelValidatorProvider>(); resolverprovider2.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[2], allValidators[3] }); Resolver <IEnumerable <ModelValidatorProvider> > resolver = new Resolver <IEnumerable <ModelValidatorProvider> >(); resolver.Current = new ModelValidatorProvider[] { resolverProvider1.Object, resolverprovider2.Object }; ModelValidatorProviderCollection collection = new ModelValidatorProviderCollection(resolver); // Act IEnumerable <ModelValidator> returnedValidators = collection.GetValidators(metadata, controllerContext); // Assert CollectionAssert.AreEqual(allValidators, returnedValidators.ToArray()); }
public void GetValidators() { // Arrange ModelMetadata metadata = GetMetadata(); ControllerContext controllerContext = new ControllerContext(); SimpleModelValidator[] allValidators = new SimpleModelValidator[] { new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator() }; Mock<ModelValidatorProvider> provider1 = new Mock<ModelValidatorProvider>(); provider1.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[0], allValidators[1] }); Mock<ModelValidatorProvider> provider2 = new Mock<ModelValidatorProvider>(); provider2.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[2], allValidators[3], allValidators[4] }); ModelValidatorProviderCollection collection = new ModelValidatorProviderCollection(); collection.Add(provider1.Object); collection.Add(provider2.Object); // Act IEnumerable<ModelValidator> returnedValidators = collection.GetValidators(metadata, controllerContext); // Assert CollectionAssert.AreEqual(allValidators, returnedValidators.ToArray()); }
public void GetValidatorsDelegatesToResolver() { // Arrange SimpleModelValidator[] allValidators = new SimpleModelValidator[] { new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator(), new SimpleModelValidator() }; ModelMetadata metadata = GetMetadata(); ControllerContext controllerContext = new ControllerContext(); Mock<ModelValidatorProvider> resolverProvider1 = new Mock<ModelValidatorProvider>(); resolverProvider1.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[0], allValidators[1] }); Mock<ModelValidatorProvider> resolverprovider2 = new Mock<ModelValidatorProvider>(); resolverprovider2.Setup(p => p.GetValidators(metadata, controllerContext)).Returns(new ModelValidator[] { allValidators[2], allValidators[3] }); Resolver<IEnumerable<ModelValidatorProvider>> resolver = new Resolver<IEnumerable<ModelValidatorProvider>>(); resolver.Current = new ModelValidatorProvider[]{resolverProvider1.Object, resolverprovider2.Object }; ModelValidatorProviderCollection collection = new ModelValidatorProviderCollection(resolver); // Act IEnumerable<ModelValidator> returnedValidators = collection.GetValidators(metadata, controllerContext); // Assert CollectionAssert.AreEqual(allValidators, returnedValidators.ToArray()); }