Merge pull request #440 from michael-lazar/new_rate_limiting
New rate limiting
This commit is contained in:
@@ -38,6 +38,7 @@ from .config import Config, copy_default_config, copy_default_mailcap
|
||||
from .theme import Theme
|
||||
from .oauth import OAuthHelper
|
||||
from .terminal import Terminal
|
||||
from .content import RequestHeaderRateLimiter
|
||||
from .objects import curses_session, patch_webbrowser
|
||||
from .subreddit_page import SubredditPage
|
||||
from .exceptions import ConfigError
|
||||
@@ -176,7 +177,13 @@ def main():
|
||||
with term.loader('Initializing', catch_exception=False):
|
||||
reddit = praw.Reddit(user_agent=user_agent,
|
||||
decode_html_entities=False,
|
||||
disable_update_check=True)
|
||||
disable_update_check=True,
|
||||
handler=RequestHeaderRateLimiter())
|
||||
|
||||
# Dial the request cache up from 30 seconds to 5 minutes
|
||||
# I'm trying this out to make navigation back and forth
|
||||
# between pages quicker, it may still need to be fine tuned.
|
||||
reddit.config.api_request_delay = 300
|
||||
|
||||
# Authorize on launch if the refresh token is present
|
||||
oauth = OAuthHelper(reddit, term, config)
|
||||
|
||||
170
rtv/content.py
170
rtv/content.py
@@ -2,8 +2,10 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import re
|
||||
import time
|
||||
import logging
|
||||
from datetime import datetime
|
||||
from timeit import default_timer as timer
|
||||
|
||||
import six
|
||||
from kitchen.text.display import wrap
|
||||
@@ -11,6 +13,8 @@ from kitchen.text.display import wrap
|
||||
from . import exceptions
|
||||
from .packages import praw
|
||||
from .packages.praw.errors import InvalidSubreddit
|
||||
from .packages.praw.helpers import normalize_url
|
||||
from .packages.praw.handlers import DefaultHandler
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -777,3 +781,169 @@ class SubscriptionContent(Content):
|
||||
data['h_offset'] = 0
|
||||
|
||||
return data
|
||||
|
||||
|
||||
class RequestHeaderRateLimiter(DefaultHandler):
|
||||
"""Custom PRAW request handler for rate-limiting requests.
|
||||
|
||||
This is an alternative to PRAW 3's DefaultHandler that uses
|
||||
Reddit's modern API guidelines to rate-limit requests based
|
||||
on the X-Ratelimit-* headers returned from Reddit. Most of
|
||||
these methods are copied from or derived from the DefaultHandler.
|
||||
|
||||
References:
|
||||
https://github.com/reddit/reddit/wiki/API
|
||||
https://github.com/praw-dev/prawcore/blob/master/prawcore/rate_limit.py
|
||||
"""
|
||||
|
||||
def __init__(self):
|
||||
|
||||
# In PRAW's convention, these variables were bound to the
|
||||
# class so the cache could be shared among all of the ``reddit``
|
||||
# instances. In RTV's use-case there is only ever a single reddit
|
||||
# instance so it made sense to clean up the globals and transfer them
|
||||
# to method variables
|
||||
self.cache = {}
|
||||
self.timeouts = {}
|
||||
|
||||
# These are used for the header rate-limiting
|
||||
self.used = None
|
||||
self.remaining = None
|
||||
self.seconds_to_reset = None
|
||||
self.next_request_timestamp = None
|
||||
|
||||
super(RequestHeaderRateLimiter, self).__init__()
|
||||
|
||||
def _delay(self):
|
||||
"""
|
||||
Pause before making the next HTTP request.
|
||||
"""
|
||||
if self.next_request_timestamp is None:
|
||||
return
|
||||
|
||||
sleep_seconds = self.next_request_timestamp - time.time()
|
||||
if sleep_seconds <= 0:
|
||||
return
|
||||
time.sleep(sleep_seconds)
|
||||
|
||||
def _update(self, response_headers):
|
||||
"""
|
||||
Update the state of the rate limiter based on the response headers:
|
||||
|
||||
X-Ratelimit-Used: Approximate number of requests used this period
|
||||
X-Ratelimit-Remaining: Approximate number of requests left to use
|
||||
X-Ratelimit-Reset: Approximate number of seconds to end of period
|
||||
|
||||
PRAW 5's rate limiting logic is structured for making hundreds of
|
||||
evenly-spaced API requests, which makes sense for running something
|
||||
like a bot or crawler.
|
||||
|
||||
This handler's logic, on the other hand, is geared more towards
|
||||
interactive usage. It allows for short, sporadic bursts of requests.
|
||||
The assumption is that actual users browsing reddit shouldn't ever be
|
||||
in danger of hitting the rate limit. If they do hit the limit, they
|
||||
will be cutoff until the period resets.
|
||||
"""
|
||||
|
||||
if 'x-ratelimit-remaining' not in response_headers:
|
||||
# This could be because the API returned an error response, or it
|
||||
# could be because we're using something like read-only credentials
|
||||
# which Reddit doesn't appear to care about rate limiting.
|
||||
return
|
||||
|
||||
self.used = float(response_headers['x-ratelimit-used'])
|
||||
self.remaining = float(response_headers['x-ratelimit-remaining'])
|
||||
self.seconds_to_reset = int(response_headers['x-ratelimit-reset'])
|
||||
_logger.debug('Rate limit: %s used, %s remaining, %s reset',
|
||||
self.used, self.remaining, self.seconds_to_reset)
|
||||
|
||||
if self.remaining <= 0:
|
||||
self.next_request_timestamp = time.time() + self.seconds_to_reset
|
||||
else:
|
||||
self.next_request_timestamp = None
|
||||
|
||||
def _clear_timeouts(self, cache_timeout):
|
||||
"""
|
||||
Clear the cache of timed out results.
|
||||
"""
|
||||
|
||||
for key in list(self.timeouts):
|
||||
if timer() - self.timeouts[key] > cache_timeout:
|
||||
del self.timeouts[key]
|
||||
del self.cache[key]
|
||||
|
||||
def clear_cache(self):
|
||||
"""Remove all items from the cache."""
|
||||
self.cache = {}
|
||||
self.timeouts = {}
|
||||
|
||||
def evict(self, urls):
|
||||
"""Remove items from cache matching URLs.
|
||||
|
||||
Return the number of items removed.
|
||||
|
||||
"""
|
||||
if isinstance(urls, six.text_type):
|
||||
urls = [urls]
|
||||
urls = set(normalize_url(url) for url in urls)
|
||||
retval = 0
|
||||
for key in list(self.cache):
|
||||
if key[0] in urls:
|
||||
retval += 1
|
||||
del self.cache[key]
|
||||
del self.timeouts[key]
|
||||
return retval
|
||||
|
||||
def request(self, _cache_key, _cache_ignore, _cache_timeout, **kwargs):
|
||||
"""
|
||||
This is a wrapper function that handles the caching of the request.
|
||||
|
||||
See DefaultHandler.with_cache for reference.
|
||||
"""
|
||||
if _cache_key:
|
||||
# Pop the request's session cookies from the cache key.
|
||||
# These appear to be unreliable and change with every
|
||||
# request. Also, with the introduction of OAuth I don't think
|
||||
# that cookies are being used to store anything that
|
||||
# differentiates API requests anyways
|
||||
url, items = _cache_key
|
||||
_cache_key = (url, (items[0], items[1], items[3], items[4]))
|
||||
|
||||
if kwargs['request'].method != 'GET':
|
||||
# I added this check for RTV, I have no idea why PRAW would ever
|
||||
# want to cache POST/PUT/DELETE requests
|
||||
_cache_ignore = True
|
||||
|
||||
if _cache_ignore:
|
||||
return self._request(**kwargs)
|
||||
|
||||
self._clear_timeouts(_cache_timeout)
|
||||
if _cache_key in self.cache:
|
||||
return self.cache[_cache_key]
|
||||
|
||||
result = self._request(**kwargs)
|
||||
|
||||
# The handlers don't call `raise_for_status` so we need to ignore
|
||||
# status codes that will result in an exception that should not be
|
||||
# cached.
|
||||
if result.status_code not in (200, 302):
|
||||
return result
|
||||
|
||||
self.timeouts[_cache_key] = timer()
|
||||
self.cache[_cache_key] = result
|
||||
return result
|
||||
|
||||
def _request(self, request, proxies, timeout, verify, **_):
|
||||
"""
|
||||
This is where we apply rate limiting and make the HTTP request.
|
||||
"""
|
||||
|
||||
settings = self.http.merge_environment_settings(
|
||||
request.url, proxies, False, verify, None)
|
||||
|
||||
self._delay()
|
||||
response = self.http.send(
|
||||
request, timeout=timeout, allow_redirects=False, **settings)
|
||||
self._update(response.headers)
|
||||
|
||||
return response
|
||||
|
||||
@@ -81,6 +81,11 @@ class Page(object):
|
||||
ch = self.term.stdscr.getch()
|
||||
self.controller.trigger(ch)
|
||||
|
||||
@PageController.register(Command('REFRESH'))
|
||||
def reload_page(self):
|
||||
self.reddit.handler.clear_cache()
|
||||
self.refresh_content()
|
||||
|
||||
@PageController.register(Command('EXIT'))
|
||||
def exit(self):
|
||||
if self.term.prompt_y_or_n('Do you really want to quit? (y/n): '):
|
||||
@@ -255,7 +260,7 @@ class Page(object):
|
||||
# Give reddit time to process the request
|
||||
time.sleep(2.0)
|
||||
if self.term.loader.exception is None:
|
||||
self.refresh_content()
|
||||
self.reload_page()
|
||||
|
||||
@PageController.register(Command('EDIT'))
|
||||
@logged_in
|
||||
@@ -291,7 +296,7 @@ class Page(object):
|
||||
time.sleep(2.0)
|
||||
|
||||
if self.term.loader.exception is None:
|
||||
self.refresh_content()
|
||||
self.reload_page()
|
||||
else:
|
||||
raise TemporaryFileError()
|
||||
|
||||
|
||||
@@ -66,7 +66,6 @@ class SubmissionPage(Page):
|
||||
|
||||
self.active = False
|
||||
|
||||
@SubmissionController.register(Command('REFRESH'))
|
||||
def refresh_content(self, order=None, name=None):
|
||||
"""
|
||||
Re-download comments and reset the page index
|
||||
@@ -188,7 +187,7 @@ class SubmissionPage(Page):
|
||||
time.sleep(2.0)
|
||||
|
||||
if self.term.loader.exception is None:
|
||||
self.refresh_content()
|
||||
self.reload_page()
|
||||
else:
|
||||
raise TemporaryFileError()
|
||||
|
||||
|
||||
@@ -34,7 +34,6 @@ class SubredditPage(Page):
|
||||
self.nav = Navigator(self.content.get)
|
||||
self.toggled_subreddit = None
|
||||
|
||||
@SubredditController.register(Command('REFRESH'))
|
||||
def refresh_content(self, order=None, name=None):
|
||||
"""
|
||||
Re-download all submissions and reset the page index
|
||||
@@ -209,7 +208,7 @@ class SubredditPage(Page):
|
||||
self.content = page.selected_subreddit
|
||||
self.nav = Navigator(self.content.get)
|
||||
else:
|
||||
self.refresh_content()
|
||||
self.reload_page()
|
||||
|
||||
@SubredditController.register(Command('SUBREDDIT_OPEN_SUBSCRIPTIONS'))
|
||||
@logged_in
|
||||
|
||||
@@ -25,7 +25,6 @@ class SubscriptionPage(Page):
|
||||
self.content_type = content_type
|
||||
self.selected_subreddit = None
|
||||
|
||||
@SubscriptionController.register(Command('REFRESH'))
|
||||
def refresh_content(self, order=None, name=None):
|
||||
"""
|
||||
Re-download all subscriptions and reset the page index
|
||||
|
||||
470
tests/cassettes/test_content_cache.yaml
Normal file
470
tests/cassettes/test_content_cache.yaml
Normal file
@@ -0,0 +1,470 @@
|
||||
interactions:
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Accept: ['*/*']
|
||||
Accept-Encoding: ['gzip, deflate']
|
||||
Connection: [keep-alive]
|
||||
User-Agent: [rtv test suite PRAW/3.6.1 Python/3.6.1 b'Darwin-14.5.0-x86_64-i386-64bit']
|
||||
method: GET
|
||||
uri: https://api.reddit.com/r/python/.json
|
||||
response:
|
||||
body:
|
||||
string: !!binary |
|
||||
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
|
||||
headers:
|
||||
Accept-Ranges: [bytes]
|
||||
Connection: [keep-alive]
|
||||
Content-Encoding: [gzip]
|
||||
Content-Length: ['10705']
|
||||
Content-Type: [application/json; charset=UTF-8]
|
||||
Date: ['Thu, 14 Sep 2017 03:53:50 GMT']
|
||||
Server: [snooserv]
|
||||
Set-Cookie: ['loid=00000000000dresn2j.2.1505361230171.Z0FBQUFBQlp1ZjFPLVVkXzQ0R0NOeGNvdGZ2Y05zOVRiU2xRZFAtSXpWRnMzUzcwQWw5X1RGUktuUXk5cEJzT29XZHdBbmpkU19uMW1UWjB1NG0zZ0lzY0JrdzBrYkxkSWVyOGZGaDgwSjRwdTBtUTlLQ051Qkc5UUtNWFhMZ29vdm1XS1RCeHB6SzY;
|
||||
Domain=reddit.com; Max-Age=63071999; Path=/; expires=Sat, 14-Sep-2019 03:53:50
|
||||
GMT; secure', 'session_tracker=gCkCjtYrydNt1OtqPx.0.1505361230166.Z0FBQUFBQlp1ZjFPSTNuZGJUcU9ydkJGRy1va0Z4Y1JlYXU3dmRJU2pXSFFsS0tyZ2NVNzZVSTFhbjlRYVNwdGdVaEFjWTlpUUVfc2NqcTNwNWRCaWoxbld0VnpBMFdrUVhuYUNNb0RXUUstQmRUN2taSXgzaG5sUmZ2N0dqVV9kV0w4aGVPeGx3QmE;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:53:50
|
||||
GMT; secure', edgebucket=ZwkjuekXJETk9f0rtQ; Domain=reddit.com; Max-Age=63071999;
|
||||
Path=/; secure]
|
||||
Strict-Transport-Security: [max-age=15552000; includeSubDomains; preload]
|
||||
Vary: [accept-encoding]
|
||||
Via: [1.1 varnish]
|
||||
X-Cache: [MISS]
|
||||
X-Cache-Hits: ['0']
|
||||
X-Moose: [majestic]
|
||||
X-Served-By: [cache-ord1734-ORD]
|
||||
X-Timer: ['S1505361230.151987,VS0,VE130']
|
||||
access-control-allow-origin: ['*']
|
||||
access-control-expose-headers: ['X-Reddit-Tracking, X-Moose']
|
||||
cache-control: ['max-age=0, must-revalidate']
|
||||
set-cookie: ['loid=00000000000dresn2j.2.1505361230171.Z0FBQUFBQlp1ZjFPLVVkXzQ0R0NOeGNvdGZ2Y05zOVRiU2xRZFAtSXpWRnMzUzcwQWw5X1RGUktuUXk5cEJzT29XZHdBbmpkU19uMW1UWjB1NG0zZ0lzY0JrdzBrYkxkSWVyOGZGaDgwSjRwdTBtUTlLQ051Qkc5UUtNWFhMZ29vdm1XS1RCeHB6SzY;
|
||||
Domain=reddit.com; Max-Age=63071999; Path=/; expires=Sat, 14-Sep-2019 03:53:50
|
||||
GMT; secure', 'session_tracker=gCkCjtYrydNt1OtqPx.0.1505361230166.Z0FBQUFBQlp1ZjFPSTNuZGJUcU9ydkJGRy1va0Z4Y1JlYXU3dmRJU2pXSFFsS0tyZ2NVNzZVSTFhbjlRYVNwdGdVaEFjWTlpUUVfc2NqcTNwNWRCaWoxbld0VnpBMFdrUVhuYUNNb0RXUUstQmRUN2taSXgzaG5sUmZ2N0dqVV9kV0w4aGVPeGx3QmE;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:53:50
|
||||
GMT; secure', edgebucket=ZwkjuekXJETk9f0rtQ; Domain=reddit.com; Max-Age=63071999;
|
||||
Path=/; secure]
|
||||
x-content-type-options: [nosniff]
|
||||
x-frame-options: [SAMEORIGIN]
|
||||
x-reddit-tracking: ['https://pixel.redditmedia.com/pixel/of_destiny.png?v=CC%2BoysF4c2QCDA1cv0lXL4EFsnlLacG7YoiMu8CIYoioysJL8eZTvYBORhfKI6Mie58DfZy2GiI%3D']
|
||||
x-ua-compatible: [IE=edge]
|
||||
x-xss-protection: [1; mode=block]
|
||||
status: {code: 200, message: OK}
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Accept: ['*/*']
|
||||
Accept-Encoding: ['gzip, deflate']
|
||||
Connection: [keep-alive]
|
||||
Cookie: [edgebucket=ZwkjuekXJETk9f0rtQ; loid=00000000000dresn2j.2.1505361230171.Z0FBQUFBQlp1ZjFPLVVkXzQ0R0NOeGNvdGZ2Y05zOVRiU2xRZFAtSXpWRnMzUzcwQWw5X1RGUktuUXk5cEJzT29XZHdBbmpkU19uMW1UWjB1NG0zZ0lzY0JrdzBrYkxkSWVyOGZGaDgwSjRwdTBtUTlLQ051Qkc5UUtNWFhMZ29vdm1XS1RCeHB6SzY;
|
||||
session_tracker=gCkCjtYrydNt1OtqPx.0.1505361230166.Z0FBQUFBQlp1ZjFPSTNuZGJUcU9ydkJGRy1va0Z4Y1JlYXU3dmRJU2pXSFFsS0tyZ2NVNzZVSTFhbjlRYVNwdGdVaEFjWTlpUUVfc2NqcTNwNWRCaWoxbld0VnpBMFdrUVhuYUNNb0RXUUstQmRUN2taSXgzaG5sUmZ2N0dqVV9kV0w4aGVPeGx3QmE]
|
||||
User-Agent: [rtv test suite PRAW/3.6.1 Python/3.6.1 b'Darwin-14.5.0-x86_64-i386-64bit']
|
||||
method: GET
|
||||
uri: https://api.reddit.com/r/python/.json
|
||||
response:
|
||||
body:
|
||||
string: !!binary |
|
||||
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
|
||||
AA==
|
||||
headers:
|
||||
Accept-Ranges: [bytes]
|
||||
Connection: [keep-alive]
|
||||
Content-Encoding: [gzip]
|
||||
Content-Length: ['10717']
|
||||
Content-Type: [application/json; charset=UTF-8]
|
||||
Date: ['Thu, 14 Sep 2017 03:53:50 GMT']
|
||||
Server: [snooserv]
|
||||
Strict-Transport-Security: [max-age=15552000; includeSubDomains; preload]
|
||||
Vary: [accept-encoding]
|
||||
Via: [1.1 varnish]
|
||||
X-Cache: [MISS]
|
||||
X-Cache-Hits: ['0']
|
||||
X-Moose: [majestic]
|
||||
X-Served-By: [cache-ord1734-ORD]
|
||||
X-Timer: ['S1505361230.401261,VS0,VE135']
|
||||
access-control-allow-origin: ['*']
|
||||
access-control-expose-headers: ['X-Reddit-Tracking, X-Moose']
|
||||
cache-control: ['max-age=0, must-revalidate']
|
||||
set-cookie: ['session_tracker=gCkCjtYrydNt1OtqPx.0.1505361230415.Z0FBQUFBQlp1ZjFPbjhCUHJjeVhtZWppZG1SVWFTWkp5VU5POVNvb0V3a1FqYnBFdXd5WjZ6Q2ZzdXA3RWNnUXdHTmVpbzd0ZFIxRTlkeElCR2U1WWwtTUhCXzRvRDcwNGRSWVlhTTJ4T3FIV05CeXFJR2VUS0JCMS1DVHA5bTF2cWlNaWZFX05BdUc;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:53:50
|
||||
GMT; secure']
|
||||
x-content-type-options: [nosniff]
|
||||
x-frame-options: [SAMEORIGIN]
|
||||
x-reddit-tracking: ['https://pixel.redditmedia.com/pixel/of_destiny.png?v=4C095%2BKWWYyl9WtXYXjsTWxLEFOw58Sc9nZyyKvtxg%2FFZKUfwsJDNvGEh3j%2FzNaYGU2%2BvJwYUhk%3D']
|
||||
x-ua-compatible: [IE=edge]
|
||||
x-xss-protection: [1; mode=block]
|
||||
status: {code: 200, message: OK}
|
||||
version: 1
|
||||
588
tests/cassettes/test_content_rate_limit.yaml
Normal file
588
tests/cassettes/test_content_rate_limit.yaml
Normal file
@@ -0,0 +1,588 @@
|
||||
interactions:
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Accept: ['*/*']
|
||||
Accept-Encoding: ['gzip, deflate']
|
||||
Connection: [keep-alive]
|
||||
User-Agent: [rtv test suite PRAW/3.6.1 Python/3.6.1 b'Darwin-14.5.0-x86_64-i386-64bit']
|
||||
method: GET
|
||||
uri: https://api.reddit.com/r/python/.json
|
||||
response:
|
||||
body:
|
||||
string: !!binary |
|
||||
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
|
||||
NHJedw0BAA==
|
||||
headers:
|
||||
Accept-Ranges: [bytes]
|
||||
Connection: [keep-alive]
|
||||
Content-Encoding: [gzip]
|
||||
Content-Length: ['10723']
|
||||
Content-Type: [application/json; charset=UTF-8]
|
||||
Date: ['Thu, 14 Sep 2017 03:34:25 GMT']
|
||||
Server: [snooserv]
|
||||
Set-Cookie: ['loid=00000000000drcw01i.2.1505360065178.Z0FBQUFBQlp1ZmpCZnJBMlhNcFVMa0RON1lKNzlDUU5FelFZenQySllVckJKZlROOHZEbTJGRVl6WWt6d29hQXhCbWFjWVBEUnhYcldDSVI4Rm05RWtoQjJoc0g0RF85MkxpQ21CYWhyZG56RzF5eFRvbkl4emVTaUt3eGhqbS0xNmR5WkR0bmx2QkQ;
|
||||
Domain=reddit.com; Max-Age=63071999; Path=/; expires=Sat, 14-Sep-2019 03:34:25
|
||||
GMT; secure', 'session_tracker=k4wTKdlbdgmQMGGxHq.0.1505360065173.Z0FBQUFBQlp1ZmpCVXFIZFdVbjFFbEZibkRvV0pMOWlhZVV0M182dXUtUktVQkt0UnZFWXBkWm03TU1uRnRFQlEyLWFMdHEyWlhKX1ZCT2x2ZWR0bElTUnFIVXBkNVVWb01DS25Nc1dVcDhkamNQcGNXNjFLaUlxWU9aV2dhelRnUHNodk10eC1ldnk;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:34:25
|
||||
GMT; secure', edgebucket=pDW9Lys2h8bInGGb9N; Domain=reddit.com; Max-Age=63071999;
|
||||
Path=/; secure]
|
||||
Strict-Transport-Security: [max-age=15552000; includeSubDomains; preload]
|
||||
Vary: [accept-encoding]
|
||||
Via: [1.1 varnish]
|
||||
X-Cache: [MISS]
|
||||
X-Cache-Hits: ['0']
|
||||
X-Moose: [majestic]
|
||||
X-Served-By: [cache-ord1731-ORD]
|
||||
X-Timer: ['S1505360065.158056,VS0,VE145']
|
||||
access-control-allow-origin: ['*']
|
||||
access-control-expose-headers: ['X-Reddit-Tracking, X-Moose']
|
||||
cache-control: ['max-age=0, must-revalidate']
|
||||
set-cookie: ['loid=00000000000drcw01i.2.1505360065178.Z0FBQUFBQlp1ZmpCZnJBMlhNcFVMa0RON1lKNzlDUU5FelFZenQySllVckJKZlROOHZEbTJGRVl6WWt6d29hQXhCbWFjWVBEUnhYcldDSVI4Rm05RWtoQjJoc0g0RF85MkxpQ21CYWhyZG56RzF5eFRvbkl4emVTaUt3eGhqbS0xNmR5WkR0bmx2QkQ;
|
||||
Domain=reddit.com; Max-Age=63071999; Path=/; expires=Sat, 14-Sep-2019 03:34:25
|
||||
GMT; secure', 'session_tracker=k4wTKdlbdgmQMGGxHq.0.1505360065173.Z0FBQUFBQlp1ZmpCVXFIZFdVbjFFbEZibkRvV0pMOWlhZVV0M182dXUtUktVQkt0UnZFWXBkWm03TU1uRnRFQlEyLWFMdHEyWlhKX1ZCT2x2ZWR0bElTUnFIVXBkNVVWb01DS25Nc1dVcDhkamNQcGNXNjFLaUlxWU9aV2dhelRnUHNodk10eC1ldnk;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:34:25
|
||||
GMT; secure', edgebucket=pDW9Lys2h8bInGGb9N; Domain=reddit.com; Max-Age=63071999;
|
||||
Path=/; secure]
|
||||
x-content-type-options: [nosniff]
|
||||
x-frame-options: [SAMEORIGIN]
|
||||
x-reddit-tracking: ['https://pixel.redditmedia.com/pixel/of_destiny.png?v=w2zI10CKhN0cuDFpS5Sja3JHe8PHstPL2MPcD8GTAX7OzcKclWgtvdtPmP4khzGzFCgf3COGr7I%3D']
|
||||
x-ua-compatible: [IE=edge]
|
||||
x-xss-protection: [1; mode=block]
|
||||
status: {code: 200, message: OK}
|
||||
- request:
|
||||
body: grant_type=refresh_token&redirect_uri=http%3A%2F%2F127.0.0.1%3A65000%2F&refresh_token=**********
|
||||
headers:
|
||||
Accept: ['*/*']
|
||||
Accept-Encoding: ['gzip, deflate']
|
||||
Authorization: ['**********']
|
||||
Connection: [keep-alive]
|
||||
Content-Length: ['122']
|
||||
Content-Type: [application/x-www-form-urlencoded]
|
||||
Cookie: [edgebucket=pDW9Lys2h8bInGGb9N; loid=00000000000drcw01i.2.1505360065178.Z0FBQUFBQlp1ZmpCZnJBMlhNcFVMa0RON1lKNzlDUU5FelFZenQySllVckJKZlROOHZEbTJGRVl6WWt6d29hQXhCbWFjWVBEUnhYcldDSVI4Rm05RWtoQjJoc0g0RF85MkxpQ21CYWhyZG56RzF5eFRvbkl4emVTaUt3eGhqbS0xNmR5WkR0bmx2QkQ;
|
||||
session_tracker=k4wTKdlbdgmQMGGxHq.0.1505360065173.Z0FBQUFBQlp1ZmpCVXFIZFdVbjFFbEZibkRvV0pMOWlhZVV0M182dXUtUktVQkt0UnZFWXBkWm03TU1uRnRFQlEyLWFMdHEyWlhKX1ZCT2x2ZWR0bElTUnFIVXBkNVVWb01DS25Nc1dVcDhkamNQcGNXNjFLaUlxWU9aV2dhelRnUHNodk10eC1ldnk]
|
||||
User-Agent: [rtv test suite PRAW/3.6.1 Python/3.6.1 b'Darwin-14.5.0-x86_64-i386-64bit']
|
||||
method: POST
|
||||
uri: https://api.reddit.com/api/v1/access_token/
|
||||
response:
|
||||
body: {string: '{"access_token": "j5nsE0MLZHcCWoY74w-qpiTinPs", "token_type":
|
||||
"bearer", "device_id": "None", "expires_in": 3600, "scope": "edit history
|
||||
identity mysubreddits privatemessages read report save submit subscribe vote"}'}
|
||||
headers:
|
||||
Accept-Ranges: [bytes]
|
||||
Connection: [keep-alive]
|
||||
Content-Length: ['214']
|
||||
Content-Type: [application/json; charset=UTF-8]
|
||||
Date: ['Thu, 14 Sep 2017 03:34:25 GMT']
|
||||
Server: [snooserv]
|
||||
Strict-Transport-Security: [max-age=15552000; includeSubDomains; preload]
|
||||
Via: [1.1 varnish]
|
||||
X-Cache: [MISS]
|
||||
X-Cache-Hits: ['0']
|
||||
X-Moose: [majestic]
|
||||
X-Served-By: [cache-ord1731-ORD]
|
||||
X-Timer: ['S1505360065.422828,VS0,VE51']
|
||||
cache-control: ['max-age=0, must-revalidate']
|
||||
set-cookie: ['session_tracker=k4wTKdlbdgmQMGGxHq.0.1505360065436.Z0FBQUFBQlp1ZmpCdXVBRWRjeV9ZdzRHR08zenpXVWVkZFViN1F6dGdERDIycFVyZTJaX1pMcWxNeElxRXU1RHpYaVJ1aFR4bkVhM1NJWmVPMU5wcWYwRnl1THBwYTU2eGpzUU9LRmJjdy1aNHduaTFOY2JLazhGN1ExMkRnYzB1djd5cXRTTFllUnQ;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:34:25
|
||||
GMT; secure']
|
||||
x-content-type-options: [nosniff]
|
||||
x-frame-options: [SAMEORIGIN]
|
||||
x-xss-protection: [1; mode=block]
|
||||
status: {code: 200, message: OK}
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Accept: ['*/*']
|
||||
Accept-Encoding: ['gzip, deflate']
|
||||
Authorization: ['**********']
|
||||
Connection: [keep-alive]
|
||||
User-Agent: [rtv test suite PRAW/3.6.1 Python/3.6.1 b'Darwin-14.5.0-x86_64-i386-64bit']
|
||||
method: GET
|
||||
uri: https://oauth.reddit.com/api/v1/me.json
|
||||
response:
|
||||
body:
|
||||
string: !!binary |
|
||||
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
|
||||
headers:
|
||||
Accept-Ranges: [bytes]
|
||||
Connection: [keep-alive]
|
||||
Content-Encoding: [gzip]
|
||||
Content-Length: ['1418']
|
||||
Content-Type: [application/json; charset=UTF-8]
|
||||
Date: ['Thu, 14 Sep 2017 03:34:25 GMT']
|
||||
Server: [snooserv]
|
||||
Set-Cookie: ['session_tracker=ccNg4m5YpT4IeulT85.0.1505360065667.Z0FBQUFBQlp1ZmpCaDZScFVxdENaeGdsdEg4azhBQ2pzaUVqQXhuOUFJcmw2Z3dBS09fN2ZlTHpkZTI3VDVtWEdnZmF5TmZHNDF5VV9SNFM3d1RsUmw3NVpnNUFTbjRDQ1NLbnpWRFRwOEZZMTZROVd5d09JdmpRV01zLW9aYlZ1YThYdDVtNjhPa3Y;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:34:25
|
||||
GMT; secure', edgebucket=iZJoZjF7XACk7ejFHw; Domain=reddit.com; Max-Age=63071999;
|
||||
Path=/; secure]
|
||||
Strict-Transport-Security: [max-age=15552000; includeSubDomains; preload]
|
||||
Vary: [accept-encoding]
|
||||
Via: [1.1 varnish]
|
||||
X-Cache: [MISS]
|
||||
X-Cache-Hits: ['0']
|
||||
X-Moose: [majestic]
|
||||
X-Served-By: [cache-ord1747-ORD]
|
||||
X-Timer: ['S1505360066.653595,VS0,VE60']
|
||||
cache-control: ['private, s-maxage=0, max-age=0, must-revalidate, max-age=0,
|
||||
must-revalidate']
|
||||
expires: ['-1']
|
||||
set-cookie: ['session_tracker=ccNg4m5YpT4IeulT85.0.1505360065667.Z0FBQUFBQlp1ZmpCaDZScFVxdENaeGdsdEg4azhBQ2pzaUVqQXhuOUFJcmw2Z3dBS09fN2ZlTHpkZTI3VDVtWEdnZmF5TmZHNDF5VV9SNFM3d1RsUmw3NVpnNUFTbjRDQ1NLbnpWRFRwOEZZMTZROVd5d09JdmpRV01zLW9aYlZ1YThYdDVtNjhPa3Y;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:34:25
|
||||
GMT; secure', edgebucket=iZJoZjF7XACk7ejFHw; Domain=reddit.com; Max-Age=63071999;
|
||||
Path=/; secure]
|
||||
x-content-type-options: [nosniff]
|
||||
x-frame-options: [SAMEORIGIN]
|
||||
x-ratelimit-remaining: ['592.0']
|
||||
x-ratelimit-reset: ['335']
|
||||
x-ratelimit-used: ['8']
|
||||
x-xss-protection: [1; mode=block]
|
||||
status: {code: 200, message: OK}
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Accept: ['*/*']
|
||||
Accept-Encoding: ['gzip, deflate']
|
||||
Authorization: ['**********']
|
||||
Connection: [keep-alive]
|
||||
Cookie: [edgebucket=iZJoZjF7XACk7ejFHw; session_tracker=ccNg4m5YpT4IeulT85.0.1505360065667.Z0FBQUFBQlp1ZmpCaDZScFVxdENaeGdsdEg4azhBQ2pzaUVqQXhuOUFJcmw2Z3dBS09fN2ZlTHpkZTI3VDVtWEdnZmF5TmZHNDF5VV9SNFM3d1RsUmw3NVpnNUFTbjRDQ1NLbnpWRFRwOEZZMTZROVd5d09JdmpRV01zLW9aYlZ1YThYdDVtNjhPa3Y]
|
||||
User-Agent: [rtv test suite PRAW/3.6.1 Python/3.6.1 b'Darwin-14.5.0-x86_64-i386-64bit']
|
||||
method: GET
|
||||
uri: https://oauth.reddit.com/r/python/.json
|
||||
response:
|
||||
body:
|
||||
string: !!binary |
|
||||
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
|
||||
/wMQZadHQA0BAA==
|
||||
headers:
|
||||
Accept-Ranges: [bytes]
|
||||
Connection: [keep-alive]
|
||||
Content-Encoding: [gzip]
|
||||
Content-Length: ['10726']
|
||||
Content-Type: [application/json; charset=UTF-8]
|
||||
Date: ['Thu, 14 Sep 2017 03:34:25 GMT']
|
||||
Server: [snooserv]
|
||||
Strict-Transport-Security: [max-age=15552000; includeSubDomains; preload]
|
||||
Vary: [accept-encoding]
|
||||
Via: [1.1 varnish]
|
||||
X-Cache: [MISS]
|
||||
X-Cache-Hits: ['0']
|
||||
X-Moose: [majestic]
|
||||
X-Served-By: [cache-ord1747-ORD]
|
||||
X-Timer: ['S1505360066.785562,VS0,VE153']
|
||||
cache-control: ['private, s-maxage=0, max-age=0, must-revalidate, max-age=0,
|
||||
must-revalidate']
|
||||
expires: ['-1']
|
||||
set-cookie: ['loid=0000000000000lqnao.2.1425202840186.Z0FBQUFBQlp1ZmpCQ2hwVmRON2pPcE4wQml3bHhrR3pnVGlkbjJDNldkVGhiMFc5c3loLXE3MERBTHV5eGQxWHg2ZkthNHhIN1MyZTFKUlU0eUVScTZVXzlyWkxwc0dQZGE1RGUwRk1uTnN6OThqSzZ5dXJHQ2dpcHpTc1RkSDhJeWs1WHBDZEFHeTY;
|
||||
Domain=reddit.com; Max-Age=63071999; Path=/; expires=Sat, 14-Sep-2019 03:34:25
|
||||
GMT; secure', 'session_tracker=ccNg4m5YpT4IeulT85.0.1505360065801.Z0FBQUFBQlp1ZmpCQmM0Q21zdlRWMTB0TmtqU25UOFdzcy10WkNybkc0YnRNelVjVFhWeEFaT05LU3RaWFBHUFAtNDVqRExKUW1kanJoRWNOYjRoSDRXS29IaXdfM1RZM1ZEX2t3X1doaWx3T2JHcVdzR1Z2N1o1X3VsUkFhNndtUk45Z2tjeWFQeXQ;
|
||||
Domain=reddit.com; Max-Age=7199; Path=/; expires=Thu, 14-Sep-2017 05:34:25
|
||||
GMT; secure']
|
||||
x-content-type-options: [nosniff]
|
||||
x-frame-options: [SAMEORIGIN]
|
||||
x-ratelimit-remaining: ['591.0']
|
||||
x-ratelimit-reset: ['335']
|
||||
x-ratelimit-used: ['9']
|
||||
x-reddit-tracking: ['https://pixel.redditmedia.com/pixel/of_destiny.png?v=PCoJe8sg5slPNmRboPobsY1BcSSnQQTlQAJJgMBLg8KMtNFALTng99PGO0pHOcYtDa4hoNeeaElx5u5lqX5P7zuQLacty5Qb']
|
||||
x-ua-compatible: [IE=edge]
|
||||
x-xss-protection: [1; mode=block]
|
||||
status: {code: 200, message: OK}
|
||||
version: 1
|
||||
1423
tests/cassettes/test_subreddit_reload_page.yaml
Normal file
1423
tests/cassettes/test_subreddit_reload_page.yaml
Normal file
File diff suppressed because it is too large
Load Diff
@@ -13,6 +13,7 @@ from six.moves.urllib.parse import urlparse, parse_qs
|
||||
from six.moves.BaseHTTPServer import HTTPServer
|
||||
|
||||
from rtv.oauth import OAuthHelper, OAuthHandler
|
||||
from rtv.content import RequestHeaderRateLimiter
|
||||
from rtv.config import Config
|
||||
from rtv.packages import praw
|
||||
from rtv.terminal import Terminal
|
||||
@@ -39,7 +40,7 @@ for name in ['vcr.matchers', 'vcr.stubs']:
|
||||
def pytest_addoption(parser):
|
||||
parser.addoption('--record-mode', dest='record_mode', default='none')
|
||||
parser.addoption('--refresh-token', dest='refresh_token',
|
||||
default='tests/refresh-token')
|
||||
default='~/.config/rtv/refresh-token')
|
||||
|
||||
|
||||
class MockStdscr(mock.MagicMock):
|
||||
@@ -180,9 +181,11 @@ def reddit(vcr, request):
|
||||
|
||||
with vcr.use_cassette(cassette_name):
|
||||
with patch('rtv.packages.praw.Reddit.get_access_information'):
|
||||
handler = RequestHeaderRateLimiter()
|
||||
reddit = praw.Reddit(user_agent='rtv test suite',
|
||||
decode_html_entities=False,
|
||||
disable_update_check=True)
|
||||
disable_update_check=True,
|
||||
handler=handler)
|
||||
# praw uses a global cache for requests, so we need to clear it
|
||||
# before each unit test. Otherwise we may fail to generate new
|
||||
# cassettes.
|
||||
|
||||
@@ -11,7 +11,8 @@ import pytest
|
||||
from rtv import exceptions
|
||||
from rtv.packages import praw
|
||||
from rtv.content import (
|
||||
Content, SubmissionContent, SubredditContent, SubscriptionContent)
|
||||
Content, SubmissionContent, SubredditContent, SubscriptionContent,
|
||||
RequestHeaderRateLimiter)
|
||||
|
||||
try:
|
||||
from unittest import mock
|
||||
@@ -560,3 +561,49 @@ def test_content_subscription_empty(reddit, terminal):
|
||||
with terminal.loader():
|
||||
SubscriptionContent.from_user(reddit, terminal.loader)
|
||||
assert isinstance(terminal.loader.exception, exceptions.SubscriptionError)
|
||||
|
||||
|
||||
def test_content_cache(reddit):
|
||||
|
||||
# Make sure the test suite is configured to use the custom handler
|
||||
assert isinstance(reddit.handler, RequestHeaderRateLimiter)
|
||||
assert not reddit.handler.cache
|
||||
|
||||
# A standard 200 response should be added to the cache
|
||||
next(reddit.get_subreddit('python').get_hot())
|
||||
request = list(reddit.handler.cache.values())[0]
|
||||
assert request.url == 'https://api.reddit.com/r/python/.json'
|
||||
|
||||
# Clearing the cache should remove the request
|
||||
reddit.handler.cache.clear()
|
||||
assert not reddit.handler.cache
|
||||
|
||||
next(reddit.get_subreddit('python').get_hot())
|
||||
assert reddit.handler.cache
|
||||
|
||||
# Evicting the cache should also remove the entry
|
||||
reddit.handler.evict('https://api.reddit.com/r/python')
|
||||
assert not reddit.handler.cache
|
||||
|
||||
|
||||
def test_content_rate_limit(reddit, oauth, refresh_token):
|
||||
|
||||
# Make sure the test suite is configured to use the custom handler
|
||||
assert isinstance(reddit.handler, RequestHeaderRateLimiter)
|
||||
assert not reddit.handler.cache
|
||||
|
||||
# unauthenticated requests don't return the x-ratelimit headers
|
||||
# so they currently aren't limited
|
||||
next(reddit.get_subreddit('python').get_hot())
|
||||
assert reddit.handler.seconds_to_reset is None
|
||||
|
||||
oauth.config.refresh_token = refresh_token
|
||||
oauth.authorize()
|
||||
|
||||
# But now that we're logged in the headers should be returned
|
||||
next(reddit.get_subreddit('python').get_hot())
|
||||
assert reddit.handler.seconds_to_reset
|
||||
|
||||
# Even though the headers were returned, the rate limiting should
|
||||
# still not be triggering a delay for the next request
|
||||
assert reddit.handler.next_request_timestamp is None
|
||||
|
||||
@@ -7,7 +7,7 @@ import six
|
||||
|
||||
from rtv import __version__
|
||||
from rtv.subreddit_page import SubredditPage
|
||||
from rtv.packages.praw.errors import NotFound
|
||||
from rtv.packages.praw.errors import NotFound, HTTPException
|
||||
|
||||
try:
|
||||
from unittest import mock
|
||||
@@ -66,6 +66,27 @@ def test_subreddit_refresh(subreddit_page, terminal):
|
||||
assert terminal.loader.exception is None
|
||||
|
||||
|
||||
def test_subreddit_reload_page(subreddit_page, terminal, reddit):
|
||||
|
||||
cache = reddit.handler.cache
|
||||
assert len(cache) == 1
|
||||
|
||||
# A plain refresh_content() will use whatever is in the praw cache
|
||||
# instead of making a new request to reddit
|
||||
list(cache.values())[0].status_code = 503
|
||||
subreddit_page.refresh_content()
|
||||
assert isinstance(terminal.loader.exception, HTTPException)
|
||||
|
||||
cache = reddit.handler.cache
|
||||
assert len(cache) == 1
|
||||
|
||||
# But if we manually trigger a page refresh, it should clear the cache
|
||||
# and reload the page instead of returning the cached 503 response
|
||||
list(cache.values())[0].status_code = 503
|
||||
subreddit_page.controller.trigger('r')
|
||||
assert terminal.loader.exception is None
|
||||
|
||||
|
||||
def test_subreddit_title(subreddit_page, terminal, capsys):
|
||||
subreddit_page.content.name = 'hello ❤'
|
||||
|
||||
|
||||
Reference in New Issue
Block a user