Example #1
0
        public void GetQueryRateLimit_QueryReturnedOutOfDateTokenRateLimit_RefreshNotPerformed()
        {
            // Arrange
            var cacheManager = CreateRateLimitCacheManager();

            _endpointRateLimit.CallsTo(x => x.ResetDateTime).Returns(DateTime.Now.AddMinutes(1));

            // Act
            cacheManager.GetQueryRateLimit(TEST_QUERY, _credentials);

            // Assert
            _fakeRateLimitCache.CallsTo(x => x.RefreshEntry(It.IsAny <ITwitterCredentials>(), It.IsAny <ICredentialsRateLimits>())).MustNotHaveHappened();
        }
Example #2
0
        public void QueryExecutedWithCredentials_QueryFoundAndRemainingIs2_NumberOfRequestIs3_Substract2()
        {
            // Arrange
            var cacheUpdater = CreateRateLimitUpdater();

            _endpointRateLimit.CallsTo(x => x.Remaining).Returns(2);

            // Act
            cacheUpdater.QueryExecuted(TEST_QUERY, _credentials, 3);

            // Assert
            Assert.AreEqual(_endpointRateLimit.Remaining, 0);
        }
        public void WaitForRateLimit_QueriesCanBePerformedRightAway_DoNotWait()
        {
            // Arrange
            var rateLimitAwaiter = CreateRateLimitAwaiter();

            _endpointRateLimit.CallsTo(x => x.Remaining).Returns(15);

            // Act
            rateLimitAwaiter.WaitForCredentialsRateLimit(TEST_QUERY, _credentials);

            // Assert
            _fakeThreadHelper.CallsTo(x => x.Sleep(It.IsAny <int>())).MustNotHaveHappened();
        }
        public void TestInitialize()
        {
            _fakeBuilder = new FakeClassBuilder<RateLimitAwaiter>();
            _fakeRateLimitCacheManager = _fakeBuilder.GetFake<IRateLimitCacheManager>();
            _fakeCredentialsAccessor = _fakeBuilder.GetFake<ICredentialsAccessor>();
            _fakeThreadHelper = _fakeBuilder.GetFake<IThreadHelper>();

            _credentials = A.Fake<ITwitterCredentials>();
            _endpointRateLimit = A.Fake<IEndpointRateLimit>();
            _endpointRateLimit.CallsTo(x => x.Remaining).Returns(0);
            _endpointRateLimit.CallsTo(x => x.ResetDateTimeInMilliseconds).Returns(TIME_TO_WAIT);

            _fakeRateLimitCacheManager.CallsTo(x => x.GetQueryRateLimit(TEST_QUERY, _credentials)).Returns(_endpointRateLimit);
            _fakeCredentialsAccessor.CallsTo(x => x.CurrentThreadCredentials).Returns(_credentials);
        }
        public void TestInitialize()
        {
            _fakeBuilder = new FakeClassBuilder <RateLimitAwaiter>();
            _fakeRateLimitCacheManager = _fakeBuilder.GetFake <IRateLimitCacheManager>();
            _fakeCredentialsAccessor   = _fakeBuilder.GetFake <ICredentialsAccessor>();
            _fakeThreadHelper          = _fakeBuilder.GetFake <IThreadHelper>();

            _credentials       = A.Fake <ITwitterCredentials>();
            _endpointRateLimit = A.Fake <IEndpointRateLimit>();
            _endpointRateLimit.CallsTo(x => x.Remaining).Returns(0);
            _endpointRateLimit.CallsTo(x => x.ResetDateTimeInMilliseconds).Returns(TIME_TO_WAIT);

            _fakeRateLimitCacheManager.CallsTo(x => x.GetQueryRateLimit(TEST_QUERY, _credentials)).Returns(_endpointRateLimit);
            _fakeCredentialsAccessor.CallsTo(x => x.CurrentThreadCredentials).Returns(_credentials);
        }
Example #6
0
        private void InitializeData()
        {
            _credentials                   = A.Fake <ITwitterCredentials>();
            _credentials.AccessToken       = TestHelper.GenerateString();
            _credentials.AccessTokenSecret = TestHelper.GenerateString();

            _credentialsRateLimits  = A.Fake <ICredentialsRateLimits>();
            _endpointRateLimit      = A.Fake <IEndpointRateLimit>();
            _credentialsRateLimits2 = A.Fake <ICredentialsRateLimits>();

            _refreshedCredentialsRateLimits = A.Fake <ICredentialsRateLimits>();
            _refreshedEndpointRateLimit     = A.Fake <IEndpointRateLimit>();

            _endpointRateLimit.CallsTo(x => x.Remaining).Returns(0);
            _endpointRateLimit.CallsTo(x => x.ResetDateTime).Returns(DateTime.Now.AddMinutes(1));

            _twitterQuery = A.Fake <ITwitterQuery>();
            _twitterQuery.CallsTo(x => x.QueryURL).Returns(TEST_QUERY);
            _twitterQuery.CallsTo(x => x.HttpMethod).Returns(HttpMethod.GET);
            _twitterQuery.CallsTo(x => x.QueryParameters).Returns(Enumerable.Empty <IOAuthQueryParameter>());
        }
 private void InitializeData()
 {
     _credentials = A.Fake<ITwitterCredentials>();
     _endpointRateLimit = A.Fake<IEndpointRateLimit>();
     _endpointRateLimit.CallsTo(x => x.Remaining).Returns(5);
 }
        private void InitializeData()
        {
            _credentials = A.Fake<ITwitterCredentials>();
            _credentials.AccessToken = TestHelper.GenerateString();
            _credentials.AccessTokenSecret = TestHelper.GenerateString();

            _credentialsRateLimits = A.Fake<ICredentialsRateLimits>();
            _endpointRateLimit = A.Fake<IEndpointRateLimit>();
            _credentialsRateLimits2 = A.Fake<ICredentialsRateLimits>();

            _refreshedCredentialsRateLimits = A.Fake<ICredentialsRateLimits>();
            _refreshedEndpointRateLimit = A.Fake<IEndpointRateLimit>();

            _endpointRateLimit.CallsTo(x => x.Remaining).Returns(0);
            _endpointRateLimit.CallsTo(x => x.ResetDateTime).Returns(DateTime.Now.AddMinutes(1));

            _twitterQuery = A.Fake<ITwitterQuery>();
            _twitterQuery.CallsTo(x => x.QueryURL).Returns(TEST_QUERY);
            _twitterQuery.CallsTo(x => x.HttpMethod).Returns(HttpMethod.GET);
            _twitterQuery.CallsTo(x => x.QueryParameters).Returns(Enumerable.Empty<IOAuthQueryParameter>());
        }
Example #9
0
 private void InitializeData()
 {
     _credentials       = A.Fake <ITwitterCredentials>();
     _endpointRateLimit = A.Fake <IEndpointRateLimit>();
     _endpointRateLimit.CallsTo(x => x.Remaining).Returns(5);
 }