summaryrefslogtreecommitdiff
path: root/nova/tests/unit/test_hacking.py
diff options
context:
space:
mode:
authorEric Fried <openstack@fried.cc>2020-02-19 18:07:23 -0600
committerBalazs Gibizer <gibi@redhat.com>2022-08-02 15:31:19 +0200
commitc36782a96a96ecfc35f8af750c29741c769ed515 (patch)
tree98b74e3b3a9ab557b462a8dd9e254bf844bd6514 /nova/tests/unit/test_hacking.py
parentf8cf050a1380ae844e0184ed45f4a04fde3b07a9 (diff)
downloadnova-c36782a96a96ecfc35f8af750c29741c769ed515.tar.gz
hacking: force explicit import of python's mock
Since we dropped support for python 2 [1], we no longer need to use the mock library, which existed to backport py3 functionality into py2. Change Ib44b5bff657c8e76c4f701e14d51a4efda3f6d32 cut over to importing the stock mock, which must be done by saying:: from unittest import mock ...because if you say:: import mock ...you will be using the third party mock library instead, which may or may not be installed. This commit adds hacking check N371 to enforce the former. [1] https://review.opendev.org/#/c/687954/ Change-Id: I71439580e80d33cff62aba807df2b35164a47cbe
Diffstat (limited to 'nova/tests/unit/test_hacking.py')
-rw-r--r--nova/tests/unit/test_hacking.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/nova/tests/unit/test_hacking.py b/nova/tests/unit/test_hacking.py
index 0cf83abacb..10b2a79db4 100644
--- a/nova/tests/unit/test_hacking.py
+++ b/nova/tests/unit/test_hacking.py
@@ -1030,3 +1030,16 @@ class HackingTestCase(test.NoDBTestCase):
"""
errors = [(x + 1, 0, 'N370') for x in range(4)]
self._assert_has_errors(code, checks.check_six, expected_errors=errors)
+
+ def test_import_stock_mock(self):
+ self._assert_has_errors(
+ "import mock",
+ checks.import_stock_mock, expected_errors=[(1, 0, 'N371')])
+ self._assert_has_errors(
+ "from mock import patch",
+ checks.import_stock_mock, expected_errors=[(1, 0, 'N371')])
+ code = """
+ from unittest import mock
+ import unittest.mock
+ """
+ self._assert_has_no_errors(code, checks.import_stock_mock)