commit - 49c000a0f5630c20b478afc551555d5811be86cb
commit + 9183683a7c546eba3f028e069c63e5fb193e0056
blob - 90f49ddaba9c3c9837bfcf4bc8c14a9424ca6dc7
blob + 7a014f40a79c46e1ec381332db1749268b481d55
--- rules/python/magic_number.py
+++ rules/python/magic_number.py
+import math
+
i = 2
-f = 0.2
-s = "hello"
# ruleid: magic_number
assert(4 == i)
# ruleid: magic_number
-assert(4 == f)
+assert(4 >= i)
# ruleid: magic_number
-assert(4 == s)
-
+assert(4 <= i)
# ruleid: magic_number
assert(i == 4)
# ruleid: magic_number
-assert(f == 4)
+assert(i != 4)
# ruleid: magic_number
-assert(s == 4)
+assert(i == 4)
+
+# ruleid: magic_number
+math.sin(4)
blob - be79ff08e62f20b803efb3ff192e34f821e64e5f
blob + 44c9be0a722063024ceabead7f6a5ae0306cacf7
--- rules/python/magic_number.yaml
+++ rules/python/magic_number.yaml
rules:
-- id: magic_number
- patterns:
- - pattern: assert $X == $Y
- message: Don't use magic numbers.
- languages: [python]
- metadata:
- references:
- - https://twitter.com/sqaunderhood/status/766911352958963712
- severity: WARNING
+ - id: magic_number
+ patterns:
+ - pattern-either:
+ - pattern: ... < ...
+ - pattern: ... > ...
+ - pattern: ... == ...
+ - pattern: ... != ...
+ - pattern: ... <= ...
+ - pattern: ... >= ...
+ - pattern: $FN(..., ..., ...)
+ - pattern-regex: \d
+ message: Don't use magic numbers.
+ languages: [python]
+ metadata:
+ references:
+ - https://twitter.com/sqaunderhood/status/766911352958963712
+ severity: WARNING