Ejemplo n.º 1
0
        private void InitialiseRabbitMQSubscribers()
        {
            var bootstrapper = _container.GetInstance <IBootstrapSubcribers>();

            _logger.Debug("RabbitMQ initialising");

            bootstrapper.LoadSubscribers(Assembly.GetAssembly(typeof(VacancySummaryPageConsumerAsync)), "VacancyEtl", _container);

            _logger.Debug("RabbitMQ initialised");

            _vacancyEtlControlQueueConsumer = _container.GetInstance <VacancyEtlControlQueueConsumer>();
        }
Ejemplo n.º 2
0
        public void ShouldKeepPoppingAndRemovingScheduleMessagesFromQueueUntilLastMessage(int queuedScheduledMessages)
        {
            var scheduledMessageQueue = GetScheduledMessagesQueue(queuedScheduledMessages);

            _messageServiceMock.Setup(x => x.GetMessage(It.IsAny <string>())).Returns(scheduledMessageQueue.Dequeue);
            var vacancyConsumer = new VacancyEtlControlQueueConsumer(_messageServiceMock.Object, _vacancySummaryProcessorMock.Object, _apprenticeshipIndexerService.Object, _traineeshipsIndexerService.Object, _logService.Object);
            var task            = vacancyConsumer.CheckScheduleQueue();

            task.Wait();

            _messageServiceMock.Verify(x => x.GetMessage(It.Is <string>(queueName => queueName == ScheduledJobQueues.VacancyEtl)), Times.Exactly(queuedScheduledMessages + 1));
            _messageServiceMock.Verify(x => x.DeleteMessage(It.Is <string>(queueName => queueName == ScheduledJobQueues.VacancyEtl), It.IsAny <string>(), It.IsAny <string>()), Times.Exactly(queuedScheduledMessages == 0 ? 0 : queuedScheduledMessages - 1));
            _apprenticeshipIndexerService.Verify(x => x.CreateScheduledIndex(It.Is <DateTime>(d => d == DateTime.Today)), Times.Exactly(queuedScheduledMessages > 0 ? 1 : 0));
            _vacancySummaryProcessorMock.Verify(x => x.ProcessVacancyPages(It.IsAny <StorageQueueMessage>()), Times.Exactly(queuedScheduledMessages == 0 ? 0 : 1));
        }
Ejemplo n.º 3
0
        private void InitializeIoC()
        {
            var container = new Container(x =>
            {
                x.AddRegistry <CommonRegistry>();
                x.AddRegistry <LoggingRegistry>();
            });

            var configurationService         = container.GetInstance <IConfigurationService>();
            var cacheConfig                  = configurationService.Get <CacheConfiguration>();
            var azureServiceBusConfiguration = configurationService.Get <AzureServiceBusConfiguration>();
            var sqlConfiguration             = configurationService.Get <SqlConfiguration>();

            _container = new Container(x =>
            {
                x.AddRegistry(new CommonRegistry(cacheConfig));
                x.AddRegistry <LoggingRegistry>();
                x.AddRegistry <AzureCommonRegistry>();
                x.AddRegistry <VacancyIndexerRegistry>();
                x.AddRegistry(new AzureServiceBusRegistry(azureServiceBusConfiguration));
                x.AddCachingRegistry(cacheConfig);
                x.AddRegistry <RaaRegistry>();
                x.AddRegistry <VacancySourceRegistry>();
                x.AddRegistry <ElasticsearchCommonRegistry>();
                x.AddRegistry <ApplicationRepositoryRegistry>();
                x.AddRegistry <CommunicationRepositoryRegistry>();
                x.AddRegistry <UserRepositoryRegistry>();
                x.AddRegistry <CandidateRepositoryRegistry>();
                x.AddRegistry <UserRepositoryRegistry>();
                x.AddRegistry <VacancyRepositoryRegistry>();
                x.AddRegistry <JobsRegistry>();
                x.AddRegistry <VacancySearchRegistry>();
                x.AddRegistry <LocationLookupRegistry>();
                x.AddRegistry <PostcodeRegistry>();
                x.AddRegistry <EmployerDataServicesRegistry>();
                x.AddRegistry <ProviderRepositoryRegistry>();
                x.AddRegistry <EmployerRepositoryRegistry>();
                x.AddRegistry(new RepositoriesRegistry(sqlConfiguration));
            });

            _logger = _container.GetInstance <ILogService>();
            _vacancyEtlControlQueueConsumer    = _container.GetInstance <VacancyEtlControlQueueConsumer>();
            _savedSearchControlQueueConsumer   = _container.GetInstance <SavedSearchControlQueueConsumer>();
            _dailyDigestControlQueueConsumer   = _container.GetInstance <DailyDigestControlQueueConsumer>();
            _housekeepingControlQueueConsumer  = _container.GetInstance <HousekeepingControlQueueConsumer>();
            _vacancyStatusControlQueueConsumer = _container.GetInstance <VacancyStatusControlQueueConsumer>();
            _configurationService = _container.GetInstance <IConfigurationService>();
        }