Ejemplo n.º 1
0
        public void Arrange()
        {
            _levyRepository = new Mock <IDasLevyRepository>();
            _levyRepository.Setup(x => x.GetLastSubmissionForScheme(ExpectedEmpRef)).ReturnsAsync(new DasDeclaration {
                LevyDueYtd = 1000m, LevyAllowanceForFullYear = 1200m
            });

            _validator = new Mock <IValidator <RefreshEmployerLevyDataCommand> >();
            _validator.Setup(x => x.Validate(It.IsAny <RefreshEmployerLevyDataCommand>())).Returns(new ValidationResult());

            _mediator = new Mock <IMediator>();

            _hmrcDateService = new Mock <IHmrcDateService>();
            _hmrcDateService.Setup(x => x.IsSubmissionForFuturePeriod(It.IsAny <string>(), It.IsAny <short>(), It.IsAny <DateTime>())).Returns(false);

            _currentDateTime = new Mock <ICurrentDateTime>();
            _currentDateTime.Setup(cdt => cdt.Now).Returns(() => DateTime.UtcNow);

            _levyEventFactory    = new Mock <ILevyEventFactory>();
            _genericEventFactory = new Mock <IGenericEventFactory>();
            _hashingService      = new Mock <IHashingService>();
            _logger                    = new Mock <ILog>();
            _eventPublisher            = new TestableEventPublisher();
            _levyImportCleanerStrategy = new LevyImportCleanerStrategy(_levyRepository.Object, _hmrcDateService.Object, _logger.Object, _currentDateTime.Object);

            _refreshEmployerLevyDataCommandHandler = new RefreshEmployerLevyDataCommandHandler(_validator.Object, _levyRepository.Object, _mediator.Object,
                                                                                               _levyEventFactory.Object, _genericEventFactory.Object, _hashingService.Object, _levyImportCleanerStrategy, _eventPublisher);
        }
        public void Arrange()
        {
            _levyRepository = new Mock <IDasLevyRepository>();
            _levyRepository.Setup(x => x.GetLastSubmissionForScheme(ExpectedEmpRef)).ReturnsAsync(new DasDeclaration {
                LevyDueYtd = 1000m, LevyAllowanceForFullYear = 1200m
            });

            _validator = new Mock <IValidator <RefreshEmployerLevyDataCommand> >();
            _validator.Setup(x => x.Validate(It.IsAny <RefreshEmployerLevyDataCommand>())).Returns(new ValidationResult());

            _hmrcDateService = new Mock <IHmrcDateService>();
            _hmrcDateService.Setup(x => x.IsSubmissionForFuturePeriod(It.IsAny <string>(), It.IsAny <short>(), It.IsAny <DateTime>())).Returns(false);

            _refreshEmployerLevyDataCommandHandler = new RefreshEmployerLevyDataCommandHandler(_validator.Object, _levyRepository.Object, _hmrcDateService.Object);
        }
Ejemplo n.º 3
0
        public RefreshEmployerLevyDataCommandHandlerTestsFixture()
        {
            _dasLevyRepository = new Mock <IDasLevyRepository>();
            var genericEventFactory = new Mock <IGenericEventFactory>();
            var hashingService      = new Mock <IHashingService>();
            var levyEventFactory    = new Mock <ILevyEventFactory>();
            var logger   = new Mock <ILog>();
            var mediator = new Mock <IMediator>();

            _eventPublisher  = new TestableEventPublisher();
            _currentDateTime = new Mock <ICurrentDateTime>();
            _currentDateTime.Setup(cdt => cdt.Now).Returns(() => DateTime.UtcNow);
            var validator = new Mock <IValidator <RefreshEmployerLevyDataCommand> >();

            validator.Setup(x => x.Validate(It.IsAny <RefreshEmployerLevyDataCommand>())).Returns(new ValidationResult());

            _hmrcDateService = new Mock <IHmrcDateService>();

            var levyImportCleanerStrategy = new LevyImportCleanerStrategy(_dasLevyRepository.Object, _hmrcDateService.Object, logger.Object, _currentDateTime.Object);

            _handler = new RefreshEmployerLevyDataCommandHandler(validator.Object, _dasLevyRepository.Object, mediator.Object,
                                                                 levyEventFactory.Object, genericEventFactory.Object, hashingService.Object, levyImportCleanerStrategy, _eventPublisher);
        }