/// <summary> /// Initializes a new instance of <see /// cref="CommandLineArgumentsConfiguration"/> with the specified <see cref="IArgumentValidator"/> /// </summary> /// <param name="argumentValidator"> /// The <see cref="IArgumentValidator"/> to use in addition to the built-in validators /// </param> public CommandLineArgumentsConfiguration(IArgumentValidator argumentValidator) : this() { _ = argumentValidator ?? throw new ArgumentNullException(nameof(argumentValidator)); this._validators.Add(argumentValidator); }
private static bool TryGetArgumentValidator(Expression argument, out IArgumentValidator result) { if (TryGetAbstractValidator(argument, out result)) { return(true); } result = null; return(false); }
/// <summary> /// Gets an argument validator for the argument represented by the expression. /// </summary> /// <param name="argument">The argument.</param> /// <returns>An IArgumentValidator used to validated arguments in IFakeObjectCalls.</returns> public virtual IArgumentValidator GetArgumentValidator(Expression argument) { IArgumentValidator result = null; if (!TryGetArgumentValidator(argument, out result)) { result = new EqualityArgumentValidator(ExpressionManager.GetValueProducedByExpression(argument)); } return(result); }
private static bool TryGetCustomArgumentValidator(Expression expression, out IArgumentValidator validator) { if (Argument.IsCallWithArgumentValidator(expression)) { validator = Argument.GetArgumentValidatorForArgument((MethodCallExpression)expression); return(true); } validator = null; return(false); }
private static string GetArgumentSignature(IArgumentValidator argument) { switch (argument) { case RequiredArgumentValidator _: return($"{argument.Type.ToString().ToLower()} {argument.Name}"); case OptionalArgumentValidator opt: return($"[{argument.Type.ToString().ToLower()} {argument.Name} = {opt.ToValue()}]"); default: throw new ArgumentOutOfRangeException(nameof(argument)); } }
private static IArgumentValidator GetArgumentValidator(Expression expressionArgument) { IArgumentValidator validator = null; if (!TryGetCustomArgumentValidator(expressionArgument, out validator)) { return(new EqualityArgumentValidator() { ValidArgument = ExpressionManager.GetValueProducedByExpression(expressionArgument) }); } return(validator); }
private static string GetArgumentSignature(IArgumentValidator argument) { switch (argument) { case RequiredArgumentValidator _: return($"{argument.Type.ToString().ToLower()} {argument.Name}"); case OptionalArgumentValidator _: throw new InvalidOperationException("Cannot use optional arguments with params arguments."); default: throw new ArgumentOutOfRangeException(nameof(argument)); } }
private static bool TryGetAbstractValidator(Expression argument, out IArgumentValidator result) { var unary = argument as UnaryExpression; if (unary != null && IsArgumentValidatorConversionMethod(unary.Method)) { result = ExpressionManager.GetValueProducedByExpression(unary.Operand) as IArgumentValidator; return(true); } var member = argument as MemberExpression; if (member != null && IsArgumentValidatorArgumentProperty(member)) { result = ExpressionManager.GetValueProducedByExpression(member.Expression) as IArgumentValidator; return(true); } result = ExpressionManager.GetValueProducedByExpression(argument) as IArgumentValidator; return(result != null); }
private bool TryGetArgumentValidator(Expression argument, out IArgumentValidator result) { var methodExpression = GetMethodCallExpression(argument); if (methodExpression == null) { result = null; return(false); } var validatorType = GetArgumentValidatorType(methodExpression); if (validatorType == null) { result = null; return(false); } result = CreateArgumentValidatorOfType(validatorType, methodExpression); return(true); }
public FibonacciGenerator(IArgumentValidator argumentValidator) { _argumentValidator = argumentValidator; }
public Argument WithValidation(IArgumentValidator validator) { ThrowErrorWhenReadOnly(); this.ArgumentValidator = validator; return this; }
public CreateNewToDoCommandHandler(IToDoRepository toDoRepository, IArgumentValidator argumentValidator) { _toDoRepository = toDoRepository; _argumentValidator = argumentValidator; }
void IArgumentValidationBuilder.Use(IArgumentValidator validator) { _argument?.Validators.Add(validator); }
public InsetRecognizer(IInsetService insetService, IArgumentValidator argumentValidator) { _insetService = insetService; _argumentValidator = argumentValidator; }
public void SetUp() { _argumentValidator = MockRepository.GenerateStub<IArgumentValidator>(); _fibonacciGenerator = new FibonacciGenerator.FibonacciGenerator(_argumentValidator); }
public MatchesAnyOf(IArgumentValidator[] validators) { _validators = validators; }
/// <summary> /// Add the specified <see cref="IArgumentValidator"/> to the validators to /// use for validating the commandline arguments /// </summary> /// <param name="validator"> /// The <see cref="IArgumentValidator"/> to add /// </param> public void Add(IArgumentValidator validator) { _ = validator ?? throw new ArgumentNullException(nameof(validator)); this._validators.Add(validator); }
public ParametersExtractor(ILogger logger, IArgumentValidator argumentValidator, IFileFinder filePatternHelper) { _logger = logger; _argumentValidator = argumentValidator; _filePatternHelper = filePatternHelper; }
public QuoteApp(ILogger <QuoteApp> logger, IArgumentValidator argumentValidator, IQuoteCalculator quoteCalculator) { _logger = logger; _argumentValidator = argumentValidator; _quoteCalculator = quoteCalculator; }
public RemoveToDoCommandHandler(IToDoRepository toDoRepository, IArgumentValidator argumentValidator) { _toDoRepository = toDoRepository; _argumentValidator = argumentValidator; }
public void SetUp() { _argumentValidator = new ArgumentValidator(); }
public DownloadService(IArgumentValidator argumentValidator) { this.argumentValidator = argumentValidator; }