public async Task SelectTest()
        {
            //параметры
            var logger = new ShoutExceptionLogger();
            var target = new MongoDbUserTopicSettingsQueries(logger, SignaloBotTestParameters.MongoDbConnection);

            //проверка
            var result = await target.Select(SignaloBotTestParameters.ExistingUserObjectId,
                SignaloBotTestParameters.ExistingCategoryID
                , SignaloBotTestParameters.ExistingSubscriptionTopicID);
            Assert.IsFalse(result.HasExceptions);            
        }
Esempio n. 2
0
        private static SignaloBotHub<ObjectId> InitSenderHub()
        {
            ICommonLogger logger = new NLogger();
            MongoDbConnectionSettings connection = SignaloBotTestParameters.MongoDbConnection;

            var queueQueries = new MongoDbSignalDispatchQueries(logger, connection);
            var eventQueries = new MongoDbSignalEventQueries(logger, connection);
            var deliveryTypeSettingsQueries = new MongoDbUserDeliveryTypeSettingsQueries(logger, connection);
            var categoryQueries = new MongoDbUserCategorySettingsQueries(logger, connection);
            var topicQueries = new MongoDbUserTopicSettingsQueries(logger, connection);
            var receivePeriodQueries = new MongoDbUserReceivePeriodQueries(logger, connection);

            var hub = new SignaloBotHub<ObjectId>();
            hub.Logger = logger;
            hub.StatisticsCollector = new ConsoleStatisticsCollector<ObjectId>();

            hub.EventQueues.Add(new EventQueue<ObjectId>(eventQueries)
            {
                ItemsQueryCount = 200,
                QueryPeriod = TimeSpan.FromSeconds(30),
                MaxFailedAttempts = 2
            });

            hub.Composer = new KeyValueComposer<ObjectId>()
            {
                ComposerQueries = new LocalComposerQueries<ObjectId>(GetComposerSettings()),
                SubscriberQueries = new MongoDbSubscriberQueries(logger, connection),
                Logger = logger
            };

            hub.DispatchQueues.Add(new DispatchQueue<ObjectId>(queueQueries)
            {
                ItemsQueryCount = 200,
                QueryPeriod = TimeSpan.FromSeconds(30),
                MaxFailedAttempts = 2,
                FailedAttemptRetryPeriod = TimeSpan.FromMinutes(5)
            });

            hub.Senders.Add(new DispatchChannel<ObjectId>()
            {
                Sender = new ConsoleMessageSender<ObjectId>(),
                DeliveryType = (int)DeliveryType.Console
            });

            var instanceProvider = new SignalServiceInstanceProvider<ObjectId>(
                hub.EventQueues.First(), hub.StatisticsCollector
                , deliveryTypeSettingsQueries, categoryQueries, topicQueries, receivePeriodQueries);
            hub.ServiceHost = new SignalServiceSelfHost<ObjectId>(logger, instanceProvider);

            return hub;
        }