public void SetUp ()
    {
      _involvedTypeProviderStub = MockRepository.GenerateStub<IInvolvedTypeProvider>();

      _mockRepository = new MockRepository();

      _validationCollectorProviderMock1 = _mockRepository.StrictMock<IValidationCollectorProvider>();
      _validationCollectorProviderMock2 = _mockRepository.StrictMock<IValidationCollectorProvider>();
      _validationCollectorProviderMock3 = _mockRepository.StrictMock<IValidationCollectorProvider>();
      _validationCollectorProviderMock4 = _mockRepository.StrictMock<IValidationCollectorProvider>();

      _componentValidationCollectorProvider = new AggregatingValidationCollectorProvider (
          _involvedTypeProviderStub,
          new[]
          {
              _validationCollectorProviderMock1, _validationCollectorProviderMock2,
              _validationCollectorProviderMock3, _validationCollectorProviderMock4
          });

      var componentValidationCollector = MockRepository.GenerateStub<IComponentValidationCollector>();
      _validationCollectorInfo1 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo2 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo3 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo4 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo5 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo6 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo7 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo8 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo9 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
      _validationCollectorInfo10 = new ValidationCollectorInfo (componentValidationCollector, typeof (AggregatingValidationCollectorProvider));
    }
Beispiel #2
0
 private IEnumerable <IPropertyInformation> GetAllPropertiesForCollector(ValidationCollectorInfo validationCollectorInfo)
 {
     return(validationCollectorInfo.Collector.RemovedPropertyRules.Select(pr => pr.Property)
            .Concat(validationCollectorInfo.Collector.AddedPropertyRules.Select(pr => pr.Property))
            .Concat(validationCollectorInfo.Collector.AddedPropertyMetaValidationRules.Select(pr => pr.Property))
            .Distinct());
 }
Beispiel #3
0
        private void AppendPropertyCollectionOutput(
            IPropertyInformation[] allProperties,
            ValidationCollectorInfo validationCollectorInfo,
            StringBuilder sb)
        {
            var loggedProperties = new Dictionary <IPropertyInformation, bool> ();

            foreach (var property in allProperties)
            {
                if (!loggedProperties.ContainsKey(property))
                {
                    IPropertyInformation actualProperty = property;
                    var removedRegistrations            = validationCollectorInfo.Collector.RemovedPropertyRules
                                                          .Where(pr => pr.Property.Equals(actualProperty))
                                                          .SelectMany(pr => pr.Validators).ToArray();
                    var addedHardValidators = validationCollectorInfo.Collector.AddedPropertyRules
                                              .Where(pr => pr.IsHardConstraint && pr.Property.Equals(actualProperty))
                                              .SelectMany(pr => pr.Validators).ToArray();
                    var addedSoftValidators = validationCollectorInfo.Collector.AddedPropertyRules
                                              .Where(pr => !pr.IsHardConstraint && pr.Property.Equals(actualProperty))
                                              .SelectMany(pr => pr.Validators).ToArray();
                    var addedMetaValidations = validationCollectorInfo.Collector.AddedPropertyMetaValidationRules
                                               .Where(pr => pr.Property.Equals(actualProperty))
                                               .SelectMany(pr => pr.MetaValidationRules).ToArray();

                    if (removedRegistrations.Any() || addedHardValidators.Any() || addedSoftValidators.Any() || addedMetaValidations.Any())
                    {
                        AppendPropertyOutput(actualProperty, removedRegistrations, addedHardValidators, addedSoftValidators, addedMetaValidations, sb);
                    }

                    loggedProperties[property] = true;
                }
            }
        }
        public void SetUp()
        {
            _validationCollectorProviderMock        = MockRepository.GenerateStrictMock <IValidationCollectorProvider>();
            _validationCollectorMergerMock          = MockRepository.GenerateStrictMock <IValidationCollectorMerger>();
            _metaRulesValidatorFactoryStub          = MockRepository.GenerateStub <IMetaRulesValidatorFactory>();
            _metaRuleValidatorMock                  = MockRepository.GenerateStrictMock <IMetaRuleValidator>();
            _validationRuleGlobalizationServiceMock = MockRepository.GenerateStrictMock <IValidationRuleMetadataService>();
            _memberInformationNameResolverMock      = MockRepository.GenerateStrictMock <IMemberInformationNameResolver>();
            _collectorValidatorMock                 = MockRepository.GenerateStrictMock <ICollectorValidator> ();

            _metaValidationRule1Stub = MockRepository.GenerateStub <IAddingComponentPropertyMetaValidationRule>();
            _metaValidationRule2Stub = MockRepository.GenerateStub <IAddingComponentPropertyMetaValidationRule>();
            _metaValidationRule3Stub = MockRepository.GenerateStub <IAddingComponentPropertyMetaValidationRule>();

            _componenValidationCollectorStub1 = MockRepository.GenerateStub <IComponentValidationCollector>();
            _componenValidationCollectorStub1.Stub(stub => stub.AddedPropertyMetaValidationRules).Return(new[] { _metaValidationRule1Stub });
            _componenValidationCollectorStub2 = MockRepository.GenerateStub <IComponentValidationCollector>();
            _componenValidationCollectorStub2.Stub(stub => stub.AddedPropertyMetaValidationRules)
            .Return(new[] { _metaValidationRule2Stub, _metaValidationRule3Stub });
            _componenValidationCollectorStub3 = MockRepository.GenerateStub <IComponentValidationCollector>();
            _componenValidationCollectorStub3.Stub(stub => stub.AddedPropertyMetaValidationRules)
            .Return(new IAddingComponentPropertyMetaValidationRule[0]);

            _validationCollectorInfo1 = new ValidationCollectorInfo(
                _componenValidationCollectorStub1,
                typeof(ApiBasedComponentValidationCollectorProvider));
            _validationCollectorInfo2 = new ValidationCollectorInfo(
                _componenValidationCollectorStub2,
                typeof(ApiBasedComponentValidationCollectorProvider));
            _validationCollectorInfo3 = new ValidationCollectorInfo(
                _componenValidationCollectorStub3,
                typeof(ApiBasedComponentValidationCollectorProvider));

            _validationRuleStub1 = MockRepository.GenerateStub <IValidationRule>();
            _validationRuleStub2 = MockRepository.GenerateStub <IValidationRule>();
            _validationRuleStub3 = PropertyRule.Create(ExpressionHelper.GetTypedMemberExpression <Customer, string> (c => c.FirstName));
            _validationRuleStub4 = PropertyRule.Create(ExpressionHelper.GetTypedMemberExpression <Customer, string> (c => c.LastName));

            _fakeValidationRuleResult           = new[] { _validationRuleStub1, _validationRuleStub2, _validationRuleStub3, _validationRuleStub4 };
            _fakeValidationCollectorMergeResult = new ValidationCollectorMergeResult(_fakeValidationRuleResult, MockRepository.GenerateStub <ILogContext>());

            _fluentValidationBuilder = new FluentValidatorBuilder(
                _validationCollectorProviderMock,
                _validationCollectorMergerMock,
                _metaRulesValidatorFactoryStub,
                _validationRuleGlobalizationServiceMock,
                _memberInformationNameResolverMock,
                _collectorValidatorMock);

            _validMetaValidationResult1   = MetaValidationRuleValidationResult.CreateValidResult();
            _validMetaValidationResult2   = MetaValidationRuleValidationResult.CreateValidResult();
            _invalidMetaValidationResult1 = MetaValidationRuleValidationResult.CreateInvalidResult("Error1");
            _invalidMetaValidationResult2 = MetaValidationRuleValidationResult.CreateInvalidResult("Error2");
        }
Beispiel #5
0
        private string DisplayCollectorType(ValidationCollectorInfo validationCollectorInfo)
        {
            var collectorType = validationCollectorInfo.Collector.GetType();
            var typeName      = GetTypeName(collectorType);

            if (collectorType.IsGenericType)
            {
                if (typeName.IndexOf('`') > 0)
                {
                    return(string.Format("{0}<{1}>", typeName.Remove(typeName.IndexOf('`')), GetTypeName(collectorType.GetGenericArguments()[0])));
                }
            }

            return(typeName);
        }
Beispiel #6
0
 public void SetUp()
 {
     _collectorStub           = MockRepository.GenerateStub <IComponentValidationCollector>();
     _validationCollectorInfo = new ValidationCollectorInfo(_collectorStub, typeof(ApiBasedComponentValidationCollectorProvider));
 }