static int Main(string[] args) { var validator = new ArgumentsCountValidator(); var operationValidator = new OperationValidator(); var sourceFileValidator = new SourceFileValidator(new DestinationFileValidator(null)); validator.SetChildValidator(operationValidator); operationValidator.SetChildValidator(sourceFileValidator); var validationResult = validator.Validate(args); if (validationResult.Succeeded == false) { Console.WriteLine(validationResult.ErrorMessage); return(1); } _actions[args[0].ToLower()](args[1], args[2]); zipper.Start(); if (zipper.ResultCode == 0) { Console.WriteLine("Done!"); } return(zipper.ResultCode); }
public TransferComponent() : base(new TransferRepository(), (Transfer entity) => { Tuple <bool, string> validation; BankAccount account = new BankAccountComponent().ReadByNumber(entity.SourceAccountId.ToString()); if (OperationValidator.CanPerform( entity.Amount, account.Balance, account.Overdraft) ) { validation = Tuple.Create <bool, string>(true, null); } else { validation = Tuple.Create(false, "Fondos Insuficientes"); } return(validation); }) { }
public void Setup() { validator = new OperationValidator(); }