public void SetUp() { _validator = GetValidator(AuRaParameters.ValidatorType.List); _innerValidators = new SortedList <long, IAuRaValidatorProcessorExtension>(); _factory = Substitute.For <IAuRaValidatorProcessorFactory>(); _logManager = LimboLogs.Instance; _finalizationManager = Substitute.For <IBlockFinalizationManager>(); _blockTree = Substitute.For <IBlockTree>(); _validatorStore = Substitute.For <IValidatorStore>(); _finalizationManager.LastFinalizedBlockLevel.Returns(0); _factory.CreateValidatorProcessor(default, default)
public MultiValidator(AuRaParameters.Validator validator, IAuRaValidatorProcessorFactory validatorFactory, IBlockTree blockTree, IValidatorStore validatorStore, 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)); _blockTree = blockTree ?? throw new ArgumentNullException(nameof(blockTree)); _validatorStore = validatorStore ?? throw new ArgumentNullException(nameof(validatorStore)); _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)); }