From add11e9f22f6b634de27765d22dfeffb28f40d64 Mon Sep 17 00:00:00 2001 From: Michael Lazar Date: Fri, 15 Jul 2016 21:53:14 -0700 Subject: [PATCH 1/3] Disable unit tests from deleting refresh token. --- tests/conftest.py | 13 +++++++++++-- tests/test_submission.py | 2 ++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 02ee9ee..8843d4c 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -5,6 +5,7 @@ import os import curses import logging from functools import partial +from tempfile import NamedTemporaryFile import praw import pytest @@ -124,8 +125,16 @@ def refresh_token(request): @pytest.yield_fixture() def config(): - with patch('rtv.config.Config.save_refresh_token'), \ - patch('rtv.config.Config.save_history'): + with patch('rtv.config.Config.save_history'), \ + patch('rtv.config.Config.delete_history'), \ + patch('rtv.config.Config.save_refresh_token'), \ + patch('rtv.config.Config.delete_refresh_token'): + + def delete_refresh_token(self): + # Skip the os.remove + self.refresh_token = None + Config.delete_refresh_token.side_effect = delete_refresh_token + yield Config() diff --git a/tests/test_submission.py b/tests/test_submission.py index 77825a1..eb1e513 100644 --- a/tests/test_submission.py +++ b/tests/test_submission.py @@ -223,6 +223,8 @@ def test_submission_edit(submission_page, terminal, refresh_token): submission_page.oauth.authorize() # Try to edit the submission - wrong author + data = submission_page.content.get(submission_page.nav.absolute_index) + data['author'] = 'some other person' curses.flash.reset_mock() submission_page.controller.trigger('e') assert curses.flash.called From 23267d8a4bb257d7ea50c52c2111f67390f36775 Mon Sep 17 00:00:00 2001 From: Michael Lazar Date: Fri, 15 Jul 2016 22:42:19 -0700 Subject: [PATCH 2/3] Fix for python 2. --- tests/conftest.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 8843d4c..32b22c5 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -125,17 +125,18 @@ def refresh_token(request): @pytest.yield_fixture() def config(): - with patch('rtv.config.Config.save_history'), \ - patch('rtv.config.Config.delete_history'), \ - patch('rtv.config.Config.save_refresh_token'), \ - patch('rtv.config.Config.delete_refresh_token'): - - def delete_refresh_token(self): + conf = Config() + with mock.patch.object(conf, 'save_history'), \ + mock.patch.object(conf, 'delete_history'), \ + mock.patch.object(conf, 'save_refresh_token'), \ + mock.patch.object(conf, 'delete_refresh_token'): + + def delete_refresh_token(): # Skip the os.remove - self.refresh_token = None - Config.delete_refresh_token.side_effect = delete_refresh_token + conf.refresh_token = None + conf.delete_refresh_token.side_effect = delete_refresh_token - yield Config() + yield conf @pytest.yield_fixture() From 99ca930041a3656ca714610fe10fe7145599b69f Mon Sep 17 00:00:00 2001 From: Michael Lazar Date: Fri, 15 Jul 2016 23:01:31 -0700 Subject: [PATCH 3/3] Fixed an ambiguous test. --- tests/test_subscription.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_subscription.py b/tests/test_subscription.py index a3ccb2b..ac460a1 100644 --- a/tests/test_subscription.py +++ b/tests/test_subscription.py @@ -40,7 +40,7 @@ def test_subscription_page_construct(reddit, terminal, config, oauth, # Header - Name name = reddit.user.name.encode('utf-8') - window.addstr.assert_any_call(0, 59, name) + assert name in [args[0][2] for args in window.addstr.call_args_list] # Banner shouldn't be drawn menu = ('[1]hot '