From f9ff3e5d1443c3f43697d681d9d75979118caf61 Mon Sep 17 00:00:00 2001 From: Oleg Silkin Date: Sun, 25 Nov 2018 10:12:30 -0600 Subject: [PATCH] Removes third-party mock dependency (#1661) * Removes mock from setup.py dependencies * Refactors name resetTime to reset_time * Replaces import mock with built-in unittest.mock * Refactors imports to separate built-in, external, and project modules --- setup.py | 1 - tests/mocks.py | 2 +- tests/test_utils.py | 4 ++-- tests/unit/core/server/test_BlobRequestHandler.py | 2 +- tests/unit/core/test_HTTPBlobDownloader.py | 2 +- tests/unit/core/test_Strategy.py | 6 ++++-- tests/unit/lbrynet_daemon/auth/test_server.py | 5 +++-- tests/unit/lbrynet_daemon/test_Daemon.py | 11 ++++++----- tests/unit/lbrynet_daemon/test_Downloader.py | 2 +- tests/unit/lbrynet_daemon/test_ExchangeRateManager.py | 4 ++-- tests/unit/test_customLogger.py | 6 ++++-- 11 files changed, 25 insertions(+), 20 deletions(-) diff --git a/setup.py b/setup.py index f42aaec4e..fc3af8901 100644 --- a/setup.py +++ b/setup.py @@ -46,7 +46,6 @@ setup( ], extras_require={ 'test': ( - 'mock>=2.0,<3.0', 'faker==0.8.17', 'pytest', 'pytest-asyncio', diff --git a/tests/mocks.py b/tests/mocks.py index 47ec2e583..09c93ca95 100644 --- a/tests/mocks.py +++ b/tests/mocks.py @@ -1,6 +1,6 @@ import base64 import io -import mock +from unittest import mock from cryptography.hazmat.backends import default_backend from cryptography.hazmat.primitives.asymmetric import rsa diff --git a/tests/test_utils.py b/tests/test_utils.py index c03de4745..ffeaff9fd 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -3,7 +3,7 @@ import time import os import tempfile import shutil -import mock +from unittest import mock from binascii import hexlify @@ -26,7 +26,7 @@ def random_lbry_hash(): return hexlify(os.urandom(48)).decode() -def resetTime(test_case, timestamp=DEFAULT_TIMESTAMP): +def reset_time(test_case, timestamp=DEFAULT_TIMESTAMP): iso_time = time.mktime(timestamp.timetuple()) patcher = mock.patch('time.time') patcher.start().return_value = iso_time diff --git a/tests/unit/core/server/test_BlobRequestHandler.py b/tests/unit/core/server/test_BlobRequestHandler.py index 07fe9e1af..953f663ea 100644 --- a/tests/unit/core/server/test_BlobRequestHandler.py +++ b/tests/unit/core/server/test_BlobRequestHandler.py @@ -1,6 +1,6 @@ from io import BytesIO +from unittest import mock -import mock from twisted.internet import defer from twisted.test import proto_helpers from twisted.trial import unittest diff --git a/tests/unit/core/test_HTTPBlobDownloader.py b/tests/unit/core/test_HTTPBlobDownloader.py index 3916e6ba8..65dee0d30 100644 --- a/tests/unit/core/test_HTTPBlobDownloader.py +++ b/tests/unit/core/test_HTTPBlobDownloader.py @@ -1,4 +1,4 @@ -from mock import MagicMock +from unittest.mock import MagicMock from twisted.trial import unittest from twisted.internet import defer diff --git a/tests/unit/core/test_Strategy.py b/tests/unit/core/test_Strategy.py index f7d2c0f9f..57a7c934a 100644 --- a/tests/unit/core/test_Strategy.py +++ b/tests/unit/core/test_Strategy.py @@ -1,7 +1,9 @@ import itertools -from twisted.trial import unittest import random -import mock +from unittest import mock + +from twisted.trial import unittest + from lbrynet.p2p.PaymentRateManager import NegotiatedPaymentRateManager, BasePaymentRateManager from lbrynet.p2p.Strategy import BasicAvailabilityWeightedStrategy from lbrynet.p2p.Offer import Offer diff --git a/tests/unit/lbrynet_daemon/auth/test_server.py b/tests/unit/lbrynet_daemon/auth/test_server.py index 849a2634c..505b48226 100644 --- a/tests/unit/lbrynet_daemon/auth/test_server.py +++ b/tests/unit/lbrynet_daemon/auth/test_server.py @@ -1,9 +1,10 @@ -import mock +from unittest import mock + from twisted.internet import reactor from twisted.trial import unittest + from lbrynet import conf from lbrynet.extras.daemon.auth import server - from tests.mocks import mock_conf_settings diff --git a/tests/unit/lbrynet_daemon/test_Daemon.py b/tests/unit/lbrynet_daemon/test_Daemon.py index fd8b6d5ce..b0713a857 100644 --- a/tests/unit/lbrynet_daemon/test_Daemon.py +++ b/tests/unit/lbrynet_daemon/test_Daemon.py @@ -1,4 +1,4 @@ -import mock +from unittest import mock import json import random from os import path @@ -13,7 +13,8 @@ from lbrynet.extras.daemon.storage import SQLiteStorage from lbrynet.extras.daemon.ComponentManager import ComponentManager from lbrynet.extras.daemon.Components import DATABASE_COMPONENT, DHT_COMPONENT, WALLET_COMPONENT from lbrynet.extras.daemon.Components import f2d -from lbrynet.extras.daemon.Components import HASH_ANNOUNCER_COMPONENT, REFLECTOR_COMPONENT, UPNP_COMPONENT, BLOB_COMPONENT +from lbrynet.extras.daemon.Components import HASH_ANNOUNCER_COMPONENT, REFLECTOR_COMPONENT +from lbrynet.extras.daemon.Components import UPNP_COMPONENT, BLOB_COMPONENT from lbrynet.extras.daemon.Components import PEER_PROTOCOL_SERVER_COMPONENT, EXCHANGE_RATE_MANAGER_COMPONENT from lbrynet.extras.daemon.Components import RATE_LIMITER_COMPONENT, HEADERS_COMPONENT, FILE_MANAGER_COMPONENT from lbrynet.extras.daemon.Daemon import Daemon as LBRYDaemon @@ -83,7 +84,7 @@ class TestCostEst(unittest.TestCase): def setUp(self): mock_conf_settings(self) - test_utils.resetTime(self) + test_utils.reset_time(self) @defer.inlineCallbacks def test_fee_and_generous_data(self): @@ -128,7 +129,7 @@ class TestJsonRpc(unittest.TestCase): return None mock_conf_settings(self) - test_utils.resetTime(self) + test_utils.reset_time(self) self.test_daemon = get_test_daemon() self.test_daemon.wallet_manager.is_first_run = False self.test_daemon.wallet_manager.get_best_blockhash = noop @@ -150,7 +151,7 @@ class TestFileListSorting(unittest.TestCase): def setUp(self): mock_conf_settings(self) - test_utils.resetTime(self) + test_utils.reset_time(self) self.faker = Faker('en_US') self.faker.seed(129) # contains 3 same points paid (5.9) self.test_daemon = get_test_daemon() diff --git a/tests/unit/lbrynet_daemon/test_Downloader.py b/tests/unit/lbrynet_daemon/test_Downloader.py index aaf600b5e..625179518 100644 --- a/tests/unit/lbrynet_daemon/test_Downloader.py +++ b/tests/unit/lbrynet_daemon/test_Downloader.py @@ -1,5 +1,5 @@ import types -import mock +from unittest import mock from twisted.trial import unittest from twisted.internet import defer, task diff --git a/tests/unit/lbrynet_daemon/test_ExchangeRateManager.py b/tests/unit/lbrynet_daemon/test_ExchangeRateManager.py index 651d3c35e..cd758d88a 100644 --- a/tests/unit/lbrynet_daemon/test_ExchangeRateManager.py +++ b/tests/unit/lbrynet_daemon/test_ExchangeRateManager.py @@ -32,7 +32,7 @@ class FeeFormatTest(unittest.TestCase): class ExchangeRateTest(unittest.TestCase): def setUp(self): - test_utils.resetTime(self) + test_utils.reset_time(self) def test_invalid_rates(self): with self.assertRaises(ValueError): @@ -43,7 +43,7 @@ class ExchangeRateTest(unittest.TestCase): class FeeTest(unittest.TestCase): def setUp(self): - test_utils.resetTime(self) + test_utils.reset_time(self) def test_fee_converts_to_lbc(self): fee = Fee({ diff --git a/tests/unit/test_customLogger.py b/tests/unit/test_customLogger.py index 77ad3b8e4..66c4aa572 100644 --- a/tests/unit/test_customLogger.py +++ b/tests/unit/test_customLogger.py @@ -1,9 +1,11 @@ from io import StringIO import logging -import mock +from unittest import mock from unittest import skipIf + from twisted.internet import defer from twisted.trial import unittest + from lbrynet import custom_logger from tests.test_utils import is_android @@ -34,7 +36,7 @@ class TestLogger(unittest.TestCase): return self.stream.getvalue().split('\n') # the line number could change if this file gets refactored - expected_first_line = 'test_customLogger.py:18 - My message: terrible things happened' + expected_first_line = 'test_customLogger.py:20 - My message: terrible things happened' # testing the entirety of the message is futile as the # traceback will depend on the system the test is being run on