public static TSource Fix <TSource>(this ValidationRuleFactory <TSource> factory, TSource source)
        {
            factory.ValidateObject(source, new ValidationContext()).ThrowIssues();
            factory.Update(source);

            return(source);
        }
示例#2
0
        public HubEnvironment(ApplicationDbContext context)
        {
            IValidationRuleFactory validationRuleFactory = new ValidationRuleFactory();
            IRepositoryFactory     repositoryFactory     = new RepositoryFactory(context);
            IActivitiesFactory     activitiesFactory     = new ActivitiesFactory(repositoryFactory, validationRuleFactory);

            UseCaseFactory = new UseCaseFactory(activitiesFactory);
        }
        public static TSource Update <TSource>(this ValidationRuleFactory <TSource> factory, TSource source)
        {
            var context = new ValidationContext()
            {
                WithUpdate = true
            };

            factory.ValidateObject(source, context);
            return(source);
        }
示例#4
0
        public void ThrowErrorWhenRuleWithNameSpecifiedDoesNotExist()
        {
            var validationRuleMock = new Mock <IContentHeaderValidationRule>();

            validationRuleMock.SetupGet(m => m.RuleName).Returns("rule");

            var validators = new[] { validationRuleMock.Object };

            var factory = new ValidationRuleFactory(validators);

            Action action = () => factory.Create("rule1111", new object[0]);

            action.Should().Throw <InvalidOperationException>();
        }
示例#5
0
        public void ReturnValidationRule()
        {
            var validationRuleMock = new Mock <IContentHeaderValidationRule>();

            validationRuleMock.SetupGet(m => m.RuleName).Returns("rule");

            var validators = new[] { validationRuleMock.Object };

            var factory = new ValidationRuleFactory(validators);

            var rule = factory.Create("rule", new object[0]);

            rule.Should().NotBeNull();
        }
示例#6
0
 private void AppStartUp(object sender, StartupEventArgs args)
 {
     try
     {
         IMainWindowController  mainWindowController  = new MainWindowController(this);
         IFrontServiceClient    frontServiceClient    = new FrontServiceClient();
         IValidationRuleFactory validationRuleFactory = new ValidationRuleFactory();
         IViewModelFactory      viewModelFactory      = new ViewModelFactory(validationRuleFactory, mainWindowController, frontServiceClient);
         IViewFactory           viewFactory           = new ViewFactory(viewModelFactory);
         mainWindowController.SetView(viewFactory);
         mainWindowController.LoadLogin();
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
示例#7
0
 //Событие выполняется при старте
 private void AppStartUp(object sender, StartupEventArgs args)
 {
     try
     {
         IClientFactory         clientCreator         = new ClientFactory();
         IComponentsController  componentsController  = new ComponentsController();
         IValidationRuleFactory validationRuleFactory = new ValidationRuleFactory();
         IViewModelFactory      viewModelCreator      = new ViewModelFactory(validationRuleFactory, componentsController, clientCreator, this);
         IViewFactory           viewCreator           = new ViewFactory(viewModelCreator);
         componentsController.SetView(viewCreator);
         componentsController.LoadLogin();
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
示例#8
0
        public void ReturnValidationRuleWithArguments()
        {
            var expected = new object[] { 1, 2, 3 };

            var validationRuleMock = new Mock <IContentHeaderValidationRule>();

            validationRuleMock.SetupGet(m => m.RuleName).Returns("rule");
            validationRuleMock.SetupGet(m => m.Args).Returns(expected);

            var validators = new[] { validationRuleMock.Object };

            var factory = new ValidationRuleFactory(validators);

            var rule = factory.Create("rule", expected);

            rule.Args.Should().NotBeEmpty();
        }
示例#9
0
        //private static Initializer _initializer = new Initializer();

        public Initializer()
        {
            string databaseName;

            using (var ctx = SqlServerValidationToolkitContext.Create(Settings.Default.ConnectionString))
            {
                databaseName = ctx.Database.Connection.Database;
            }

            string deleteQueryFormat = @"
            USE [master]
            
            
                ALTER DATABASE [{0}] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
                DROP DATABASE [{0}] ;";

            string deleteQuery = string.Format(deleteQueryFormat, databaseName);
            string encryptedConnectionString;

            using (var secureConnectionString = Settings.Default.ConnectionString.ToSecureString())
            {
                encryptedConnectionString = secureConnectionString.EncryptString();
            }

            DatabaseInitializer initializer = new DatabaseInitializer(encryptedConnectionString);

            initializer.ExecuteSplitByGo(deleteQuery);

            System.Data.Entity.Database.SetInitializer <SqlServerValidationToolkitContext>(null);
            using (var ctx = SqlServerValidationToolkitContext.Create(Settings.Default.ConnectionString))
            {
                ctx.Database.Create();
            }

            ValidationRuleFactory = new ValidationRuleFactory();


            //initializer.InstallValidationToolkit();

            System.Data.Entity.Database.SetInitializer <TestDatabaseContext>(null);

            initializer.ExecuteSplitByGo(Resources.CREATE_and_fill_Validation_Test_Database);
        }
 /// <summary>
 /// The method return example of TSource type. Be carefull, it has NULL or other empty value (i.e. 0).
 /// The method usefull when Validation signature need to have type but C# compiler cannot calculate it automatically.
 /// So several method request example parameters which use only as C# type hints (without any using).
 /// </summary>
 public static TSource Example <TSource>(this ValidationRuleFactory <TSource> factory)
 {
     return(default(TSource));
 }
 public static ValidationResult Validate <TSource>(this ValidationRuleFactory <TSource> factory, TSource source)
 {
     return(factory.ValidateObject(source, new ValidationContext()));
 }
示例#12
0
 static void Validate(ValidationRuleFactory <IInterf> fact)
 {
     fact.RuleFor(x => x.A).Greater(0);
 }
示例#13
0
 static void Validate(ValidationRuleFactory <List <int> > t, int b, string c)
 {
 }
示例#14
0
 static void Validate <T>(ValidationRuleFactory <ITemplateInterf <T> > t)
 {
     t.RuleFor(x => x.A).NotEmpty();
 }
示例#15
0
 static void Validate(ValidationRuleFactory <CopyClass0> t)
 {
     t.RuleFor(x => x.A).Greater(0);
 }
示例#16
0
 static void Validate(ValidationRuleFactory <ICopyClass1> t)
 {
     t.RuleFor(x => x.B).Trim().Forbidden("a");
 }