public void GetCustomValidationsForQuestion_should_return_validations_for_config() { var config = new Mock <IOptions <List <CustomValidationConfiguration> > >(); config.Setup(c => c.Value).Returns(new List <CustomValidationConfiguration> { new CustomValidationConfiguration { PageId = "P1", QuestionId = "Q1", Name = "FileSizeMaxMb", ErrorMessage = "File is too big", Value = "10" }, }); var factory = new CustomValidatorFactory(config.Object); var result1 = factory.GetCustomValidationsForQuestion("P1", "Q1", null); result1.Count().Should().Be(1); result1.ToList()[0].Should().BeOfType <FileSizeMaxMbValidator>(); var result2 = factory.GetCustomValidationsForQuestion("P2", "Q1", null); result2.Count().Should().Be(0); var result3 = factory.GetCustomValidationsForQuestion("P1", "Q2", null); result3.Count().Should().Be(0); }
public void GetCustomValidationsForPage_should_return_validations_for_config() { var config = new Mock <IOptions <List <CustomValidationConfiguration> > >(); config.Setup(c => c.Value).Returns(new List <CustomValidationConfiguration> { new CustomValidationConfiguration { PageId = "P1", Name = "FileUploadRequired", ErrorMessage = "Please upload a file", Value = "Q1" }, }); var page1 = new Page { PageId = "P1", Questions = new List <Question> { new Question { QuestionId = "Q1", Input = new Input { Type = "FileUpload" } } }, PageOfAnswers = new List <PageOfAnswers>() }; var page2 = new Page { PageId = "P2", Questions = new List <Question> { new Question { QuestionId = "Q2", Input = new Input { Type = "FileUpload" } } }, PageOfAnswers = new List <PageOfAnswers>() }; var factory = new CustomValidatorFactory(config.Object); var result1 = factory.GetCustomValidationsForPage(page1, null); result1.Count().Should().Be(1); result1.ToList()[0].Should().BeOfType <FileUploadRequiredValidator>(); var result2 = factory.GetCustomValidationsForPage(page2, null); result2.Count().Should().Be(0); var result3 = factory.GetCustomValidationsForPage(null, null); result3.Count().Should().Be(0); }
public void TestCustomValidator_Create() { IFactory <ICustomValidator> fact = new CustomValidatorFactory(); Assert.IsNotNull(fact); ICustomValidator validator = fact.Create(); Assert.IsNotNull(validator); }
public static SchemaGenerator CreateSchemaGenerator( IValidator[] validators, FluentValidationSwaggerGenOptions?fluentValidationSwaggerGenOptions = null) { return(CreateSchemaGenerator(options => { IValidatorFactory validatorFactory = new CustomValidatorFactory(validators); options.SchemaFilters.Add(new FluentValidationRules( validatorFactory: validatorFactory, rules: null, loggerFactory: null, options: fluentValidationSwaggerGenOptions != null ? new OptionsWrapper <FluentValidationSwaggerGenOptions>(fluentValidationSwaggerGenOptions) : null)); })); }
public static SchemaGenerator CreateSchemaGenerator( IValidator[] validators, SchemaGenerationOptions?schemaGenerationOptions = null, SchemaGenerationSettings?schemaGenerationSettings = null, Action <JsonSerializerOptions>?configureSerializer = null) { return(CreateSchemaGenerator( configureGenerator: options => { IValidatorFactory validatorFactory = new CustomValidatorFactory(validators); options.SchemaFilters.Add(new FluentValidationRules( validatorFactory: validatorFactory, rules: null, loggerFactory: null, schemaGenerationOptions: schemaGenerationOptions != null ? new OptionsWrapper <SchemaGenerationOptions>(schemaGenerationOptions) : null, nameResolver: schemaGenerationSettings?.NameResolver)); }, configureSerializer: configureSerializer)); }
public void TestCustomValidator_Create() { // arrange IFactory<ICustomValidator> fact = new CustomValidatorFactory(); //act //assert Assert.IsNotNull(fact); // arrange ICustomValidator validator = fact.Create(); //act //assert Assert.IsNotNull(validator); }
public void TestCustomValidator_Create() { IFactory<ICustomValidator> fact = new CustomValidatorFactory(); Assert.IsNotNull(fact); ICustomValidator validator = fact.Create(); Assert.IsNotNull(validator); }
private void ConfigureGenerator(SchemaGeneratorOptions options, params IValidator[] validators) { IValidatorFactory validatorFactory = new CustomValidatorFactory(validators); options.SchemaFilters.Add(new FluentValidationRules(validatorFactory)); }