public ITokenRateLimit GetQueryRateLimit(string query, ITwitterCredentials credentials) { var rateLimits = _rateLimitCache.GetTokenRateLimits(credentials); var queryRateLimit = _rateLimitHelper.GetTokenRateLimitFromQuery(query, rateLimits); if (rateLimits == null || DoesQueryNeedsToRefreshTheCacheInformation(queryRateLimit)) { rateLimits = RefreshCredentialsRateLimits(credentials); queryRateLimit = _rateLimitHelper.GetTokenRateLimitFromQuery(query, rateLimits); } return(queryRateLimit); }
private void GetTokenRateLimitFromQuery_EndpointAssociatedCorrectly(Expression <Func <ITokenRateLimits, ITokenRateLimit> > rateLimit, string associatedURL, IRateLimitHelper rateLimitHelper) { // Arrange var fakeTokenRateLimit = A.Fake <ITokenRateLimit>(); _tokenRateLimits.CallsTo(rateLimit).Returns(fakeTokenRateLimit); // Act var tokenRateLimit = rateLimitHelper.GetTokenRateLimitFromQuery(associatedURL, _tokenRateLimits); // Assert Assert.AreEqual(tokenRateLimit, fakeTokenRateLimit); }
private void GetTokenRateLimitFromQuery_EndpointAssociatedCorrectly(Expression<Func<ITokenRateLimits, ITokenRateLimit>> rateLimit, string associatedURL, IRateLimitHelper rateLimitHelper) { // Arrange var fakeTokenRateLimit = A.Fake<ITokenRateLimit>(); _tokenRateLimits.CallsTo(rateLimit).Returns(fakeTokenRateLimit); // Act var tokenRateLimit = rateLimitHelper.GetTokenRateLimitFromQuery(associatedURL, _tokenRateLimits); // Assert Assert.AreEqual(tokenRateLimit, fakeTokenRateLimit); }