summaryrefslogtreecommitdiff
path: root/tox.ini
diff options
context:
space:
mode:
authorBalazs Gibizer <balazs.gibizer@est.tech>2021-08-23 19:23:31 +0200
committerLee Yarwood <lyarwood@redhat.com>2021-09-01 12:26:52 +0100
commit9f8cc2f03827c10f89ee652bc73790b3c58111d3 (patch)
tree98e6f68bec83a0aeb52f9050cae76f865d61ae68 /tox.ini
parent7c1ca501eeeb6aa0067327b4f37d06244987e953 (diff)
downloadnova-9f8cc2f03827c10f89ee652bc73790b3c58111d3.tar.gz
Add two new hacking rules
As the bug and fix If71620e808744736cb4fe3abda76d81a6335311b showed it is dangerous to forget instantiating the Mock class before it is used in the test as changes on the class directly leaks out from the test. In almost all the cases using Mock class directly is a bug and the author original intention is to use an instance instead, just forgot about the parents. So this patch adds two new hacking rules: N367: catches the case when Mock class is aliased in the test: self.mock_mystuff = mock.Mock N368: catches when mock.patch instructed to use the Mock class as replacement value during patching: mock.patch('Bar.foo', new=mock.Mock) For N367 the previous patch removed the last hit. For N368 this patch removes the two hits exists. Change-Id: Id42ca571b1569886ef47aa350369e9d2068e77bc Related-Bug: #1936849
Diffstat (limited to 'tox.ini')
-rw-r--r--tox.ini2
1 files changed, 2 insertions, 0 deletions
diff --git a/tox.ini b/tox.ini
index 6dfde9afbb..65d145e40f 100644
--- a/tox.ini
+++ b/tox.ini
@@ -317,6 +317,8 @@ extension =
N364 = checks:nonexistent_assertion_methods_and_attributes
N365 = checks:useless_assertion
N366 = checks:check_assert_has_calls
+ N367 = checks:do_not_alias_mock_class
+ N368 = checks:do_not_use_mock_class_as_new_mock_value
paths =
./nova/hacking