Esempio n. 1
0
        public void GetSubscriptionInfos_ReturnsZeroSubscriberCount_WhenQueryCleared()
        {
            var querySubscription = new QuerySubscriptions();

            var query = new SingleQuoteQuery(1);

            querySubscription.AddSubscriber(query);
            querySubscription.ClearQuery(query);
            var querySubscriptionInfos = querySubscription.GetSubscriptionInfos();

            Assert.Empty(querySubscriptionInfos);
        }
        public async Task GetPrioritizedQueries_ShouldIgnoreSubscriptionsWithNoSubscribers()
        {
            var querySubscriptions = new QuerySubscriptions();

            var query1 = new TestQuery(1, QueryFunctionType.SingleQuote);
            var query2 = new TestQuery(2, QueryFunctionType.IntraDay);

            querySubscriptions.AddSubscriber(query1);
            querySubscriptions.AddSubscriber(query2);

            querySubscriptions.ClearQuery(query2);

            query1.SetMockQueryContext(_mockContext);
            query2.SetMockQueryContext(_mockContext);

            var priorityRule = new QuerySubscriptionCountRule(_mockContextFactory.Object, querySubscriptions, (new Mock <ILogger <QuerySubscriptionCountRule> >()).Object);

            var prioritizedQueries = (await priorityRule.GetPrioritizedQueries()).ToList();

            Assert.Single(prioritizedQueries);
            Assert.Equal(prioritizedQueries[0], query1);
        }
 public void ResetPriority(StockQuery query)
 {
     _querySubscriptions.ClearQuery(query);
 }