Re-naming

This commit is contained in:
Michael Lazar
2017-09-13 02:16:17 -04:00
parent 5908d932f0
commit 5e82811918
3 changed files with 12 additions and 7 deletions

View File

@@ -36,7 +36,7 @@ from . import packages
from .packages import praw from .packages import praw
from .config import Config, copy_default_config, copy_default_mailcap from .config import Config, copy_default_config, copy_default_mailcap
from .theme import Theme from .theme import Theme
from .oauth import OAuthHelper, OAuthRateLimitHandler from .oauth import OAuthHelper, OAuthRateLimiter
from .terminal import Terminal from .terminal import Terminal
from .objects import curses_session, patch_webbrowser from .objects import curses_session, patch_webbrowser
from .subreddit_page import SubredditPage from .subreddit_page import SubredditPage
@@ -174,11 +174,10 @@ def main():
term = Terminal(stdscr, config, theme) term = Terminal(stdscr, config, theme)
with term.loader('Initializing', catch_exception=False): with term.loader('Initializing', catch_exception=False):
handler = OAuthRateLimitHandler()
reddit = praw.Reddit(user_agent=user_agent, reddit = praw.Reddit(user_agent=user_agent,
decode_html_entities=False, decode_html_entities=False,
disable_update_check=True, disable_update_check=True,
handler=handler) handler=OAuthRateLimiter())
# Authorize on launch if the refresh token is present # Authorize on launch if the refresh token is present
oauth = OAuthHelper(reddit, term, config) oauth = OAuthHelper(reddit, term, config)

View File

@@ -231,6 +231,12 @@ class OAuthHelper(object):
def fix_cache(func): def fix_cache(func):
"""
This is a shim around PRAW's 30 second page cache that attempts
to address broken behavior that hasn't been fixed because PRAW 3
is deprecated.
"""
def wraps(self, _cache_key, _cache_ignore, *args, **kwargs): def wraps(self, _cache_key, _cache_ignore, *args, **kwargs):
if _cache_key: if _cache_key:
# Pop the request's session cookies from the cache key. # Pop the request's session cookies from the cache key.
@@ -249,7 +255,7 @@ def fix_cache(func):
return wraps return wraps
class OAuthRateLimitHandler(DefaultHandler): class OAuthRateLimiter(DefaultHandler):
"""Custom PRAW request handler for rate-limiting requests. """Custom PRAW request handler for rate-limiting requests.
This is an alternative to PRAW 3's DefaultHandler that uses This is an alternative to PRAW 3's DefaultHandler that uses

View File

@@ -12,7 +12,7 @@ from vcr import VCR
from six.moves.urllib.parse import urlparse, parse_qs from six.moves.urllib.parse import urlparse, parse_qs
from six.moves.BaseHTTPServer import HTTPServer from six.moves.BaseHTTPServer import HTTPServer
from rtv.oauth import OAuthHelper, OAuthHandler, OAuthRateLimitHandler from rtv.oauth import OAuthHelper, OAuthHandler, OAuthRateLimiter
from rtv.config import Config from rtv.config import Config
from rtv.packages import praw from rtv.packages import praw
from rtv.terminal import Terminal from rtv.terminal import Terminal
@@ -39,7 +39,7 @@ for name in ['vcr.matchers', 'vcr.stubs']:
def pytest_addoption(parser): def pytest_addoption(parser):
parser.addoption('--record-mode', dest='record_mode', default='none') parser.addoption('--record-mode', dest='record_mode', default='none')
parser.addoption('--refresh-token', dest='refresh_token', parser.addoption('--refresh-token', dest='refresh_token',
default='tests/refresh-token') default='~/.config/rtv/refresh-token')
class MockStdscr(mock.MagicMock): class MockStdscr(mock.MagicMock):
@@ -180,7 +180,7 @@ def reddit(vcr, request):
with vcr.use_cassette(cassette_name): with vcr.use_cassette(cassette_name):
with patch('rtv.packages.praw.Reddit.get_access_information'): with patch('rtv.packages.praw.Reddit.get_access_information'):
handler = OAuthRateLimitHandler() handler = OAuthRateLimiter()
reddit = praw.Reddit(user_agent='rtv test suite', reddit = praw.Reddit(user_agent='rtv test suite',
decode_html_entities=False, decode_html_entities=False,