public void SetUp() { _validator = GetValidator(); _innerValidators = new SortedList <long, IAuRaValidatorProcessor>(); _factory = Substitute.For <IAuRaAdditionalBlockProcessorFactory>(); _logManager = Substitute.For <ILogManager>(); _transactionProcessor = Substitute.For <ITransactionProcessor>(); _factory.CreateValidatorProcessor(default, default)
public void SetUp() { _validator = GetValidator(); _innerValidators = new SortedList <long, IAuRaValidatorProcessor>(); _factory = Substitute.For <IAuRaAdditionalBlockProcessorFactory>(); _logManager = Substitute.For <ILogManager>(); _finalizationManager = Substitute.For <IBlockFinalizationManager>(); _finalizationManager.LastFinalizedBlockLevel.Returns(-1); _factory.CreateValidatorProcessor(default, default)
public MultiValidator(AuRaParameters.Validator validator, IAuRaAdditionalBlockProcessorFactory validatorFactory, ILogManager logManager) { if (validator == null) { throw new ArgumentNullException(nameof(validator)); } if (validator.ValidatorType != AuRaParameters.ValidatorType.Multi) { throw new ArgumentException("Wrong validator type.", nameof(validator)); } _validatorFactory = validatorFactory ?? throw new ArgumentNullException(nameof(validatorFactory)); _logger = logManager?.GetClassLogger() ?? throw new ArgumentNullException(nameof(logManager)); _validators = validator.Validators?.Count > 0 ? validator.Validators : throw new ArgumentException("Multi validator cannot be empty.", nameof(validator.Validators)); }
public MultiValidator(AuRaParameters.Validator validator, IAuRaAdditionalBlockProcessorFactory validatorFactory, ILogManager logManager) { if (validator == null) { throw new ArgumentNullException(nameof(validator)); } if (validatorFactory == null) { throw new ArgumentNullException(nameof(validatorFactory)); } if (validator.ValidatorType != AuRaParameters.ValidatorType.Multi) { throw new ArgumentException("Wrong validator type.", nameof(validator)); } _validators = validator.Validators?.Count > 0 ? validator.Validators .Select(kvp => new KeyValuePair <long, IAuRaValidatorProcessor>(kvp.Key, validatorFactory.CreateValidatorProcessor(kvp.Value, Math.Max(1, kvp.Key)))) // we need to make init block at least 1 as 0 is genesis. .ToArray() : throw new ArgumentException("Multi validator cannot be empty.", nameof(validator.Validators)); _logger = logManager?.GetClassLogger() ?? throw new ArgumentNullException(nameof(logManager)); }