コード例 #1
0
        public NotificationSenderUnitTests()
        {
            _templateRender = new LiquidTemplateRenderer(Options.Create(new LiquidRenderOptions()
            {
                CustomFilterTypes = new HashSet <Type> {
                    typeof(UrlFilters), typeof(TranslationFilter)
                }
            }));
            _messageServiceMock = new Mock <INotificationMessageService>();
            _messageSenderMock  = new Mock <INotificationMessageSender>();

            _senderFactoryMock = new Mock <INotificationMessageSenderFactory>();
            _senderFactoryMock.Setup(s => s.GetSender(It.IsAny <NotificationMessage>())).Returns(_messageSenderMock.Object);
            _backgroundJobClient = new Mock <IBackgroundJobClient>();

            _sender = new NotificationSender(_templateRender, _messageServiceMock.Object, _senderFactoryMock.Object, _backgroundJobClient.Object);

            if (!AbstractTypeFactory <NotificationTemplate> .AllTypeInfos.SelectMany(x => x.AllSubclasses).Contains(typeof(EmailNotificationTemplate)))
            {
                AbstractTypeFactory <NotificationTemplate> .RegisterType <EmailNotificationTemplate>().MapToType <NotificationTemplateEntity>();
            }

            if (!AbstractTypeFactory <NotificationMessage> .AllTypeInfos.SelectMany(x => x.AllSubclasses).Contains(typeof(EmailNotificationMessage)))
            {
                AbstractTypeFactory <NotificationMessage> .RegisterType <EmailNotificationMessage>().MapToType <NotificationMessageEntity>();
            }

            if (!AbstractTypeFactory <NotificationScriptObject> .AllTypeInfos.SelectMany(x => x.AllSubclasses).Contains(typeof(NotificationScriptObject)))
            {
                AbstractTypeFactory <NotificationScriptObject> .RegisterType <NotificationScriptObject>()
                .WithFactory(() => new NotificationScriptObject(null, null));
            }

            _notificationSearchServiceMock = new Mock <INotificationSearchService>();

            _notificationRegistrar = new NotificationRegistrar(null);
        }
        public NotificationMessageServiceUnitTests()
        {
            _repositoryMock = new Mock <INotificationRepository>();
            Func <INotificationRepository> factory = () => _repositoryMock.Object;

            _mockUnitOfWork = new Mock <IUnitOfWork>();
            _repositoryMock.Setup(ss => ss.UnitOfWork).Returns(_mockUnitOfWork.Object);
            _eventPublisherMock            = new Mock <IEventPublisher>();
            _notificationServiceMock       = new Mock <INotificationService>();
            _notificationSearchServiceMock = new Mock <INotificationSearchService>();
            _notificationMessageService    = new NotificationMessageService(factory, _eventPublisherMock.Object);

            if (!AbstractTypeFactory <NotificationMessageEntity> .AllTypeInfos.SelectMany(x => x.AllSubclasses).Contains(typeof(EmailNotificationMessageEntity)))
            {
                AbstractTypeFactory <NotificationMessageEntity> .RegisterType <EmailNotificationMessageEntity>();
            }

            if (!AbstractTypeFactory <NotificationTemplate> .AllTypeInfos.SelectMany(x => x.AllSubclasses).Contains(typeof(EmailNotificationTemplate)))
            {
                AbstractTypeFactory <NotificationTemplate> .RegisterType <EmailNotificationTemplate>().MapToType <NotificationTemplateEntity>();
            }

            if (!AbstractTypeFactory <NotificationMessage> .AllTypeInfos.SelectMany(x => x.AllSubclasses).Contains(typeof(EmailNotificationMessage)))
            {
                AbstractTypeFactory <NotificationMessage> .RegisterType <EmailNotificationMessage>().MapToType <NotificationMessageEntity>();
            }

            var criteria = AbstractTypeFactory <NotificationSearchCriteria> .TryCreateInstance();

            criteria.NotificationType = nameof(RegistrationEmailNotification);
            criteria.Take             = 1;
            _notificationSearchServiceMock.Setup(x => x.SearchNotificationsAsync(criteria)).ReturnsAsync(new NotificationSearchResult());
            var notificationService = new NotificationRegistrar(null);

            notificationService.RegisterNotification <RegistrationEmailNotification>();
        }
 public NotificationRegistrarUnitTests()
 {
     _notificationServiceMock       = new Mock <INotificationService>();
     _notificationSearchServiceMock = new Mock <INotificationSearchService>();
     _notificationRegistrar         = new NotificationRegistrar(null);
 }