Commit Diff


commit - 9183683a7c546eba3f028e069c63e5fb193e0056
commit + dfc5337dcdee440d56c2c53264f56fe29b02d8f5
blob - 5a5b1558a78054c4334defe1ce539d7a55462e8b
blob + 20ebe4f518e5e34f5277ef6702967f2b10fd1834
--- rules/python/flakiness/cmp_current_time.py
+++ rules/python/flakiness/cmp_current_time.py
@@ -1,25 +1,14 @@
-import random
 import time
 from datetime import datetime
 from timeit import timeit
 
 t = datetime.now()
 # rule-id: cmp_current_time
-assert(t > 0)
-# rule-id: cmp_current_time
-assert(t < 0)
-# rule-id: cmp_current_time
 assert(t == 0)
 # rule-id: cmp_current_time
-assert(t >= 0)
-# rule-id: cmp_current_time
-assert(t <= 0)
-# rule-id: cmp_current_time
-assert(t <> 0)
-# rule-id: cmp_current_time
 assert(t != 0)
 
-t = time.now()
+t = time.time()
 # rule-id: cmp_current_time
 assert(t > 0)
 # rule-id: cmp_current_time
@@ -27,15 +16,7 @@ assert(t < 0)
 # rule-id: cmp_current_time
 assert(t == 0)
 # rule-id: cmp_current_time
-assert(t >= 0)
-# rule-id: cmp_current_time
-assert(t <= 0)
-# rule-id: cmp_current_time
-assert(t <> 0)
-# rule-id: cmp_current_time
 assert(t != 0)
-# rule-id: cmp_current_time
-time.clock()
 
 # rule-id: cmp_current_time
 a = timeit.timeit()
blob - 8f5b08c97fba329c89b9fed0d4c4b1cc54f71118
blob + 92ed66f4f797eb3cd986b65c79cca29ac816148b
--- rules/python/flakiness/cmp_current_time.yaml
+++ rules/python/flakiness/cmp_current_time.yaml
@@ -1,44 +1,25 @@
 rules:
-- id: cmp_current_time
-  patterns:
-    - pattern-either: 
-      - pattern: |
-              assert(datetime.now() == $X)
-      - pattern: |
-              datetime.now() <> $X
-      - pattern: |
-              datetime.now() > $X
-      - pattern: |
-              datetime.now() < $X
-      - pattern: |
-              datetime.now() >= $X
-      - pattern: |
-              datetime.now() <= $X
-      - pattern: |
-              time.now() == $X
-      - pattern: |
-              time.now() <> $X
-      - pattern: |
-              time.now() > $X
-      - pattern: |
-              time.now() < $X
-      - pattern: |
-              time.now() >= $X
-      - pattern: |
-              time.now() <= $X
-      - pattern: |
-              time.time() <= $X
-      - pattern: |
-              time.clock() <= $X
-      - pattern: |
-              timeit.timeit()
-  message: cmp_current_time
-  fix: |
-    Use timeit.default_timer instead of timeit.timeit.
-  languages:
-  - python
-  metadata:
-    references:
-    - https://docs.python.org/3/library/timeit.html#timeit.default_timer
-    - https://stackoverflow.com/questions/7370801/how-to-measure-elapsed-time-in-python
-  severity: WARNING
+  - id: cmp_current_time
+    patterns:
+      - pattern-either:
+          - pattern-inside: ... <> ...
+          - pattern-inside: ... > ...
+          - pattern-inside: ... < ...
+          - pattern-inside: ... >= ...
+          - pattern-inside: ... <= ...
+          - pattern-inside: ... == ...
+      - pattern-either:
+          - pattern: $T = datetime.now()
+          - pattern: $T = time.time()
+          - pattern: $T = time.clock()
+          - pattern: $T = timeit.timeit()
+    message: cmp_current_time
+    languages:
+      - python
+    metadata:
+      references:
+        - https://docs.python.org/3/library/datetime.html
+        - https://docs.python.org/3/library/time.html
+        - https://docs.python.org/3/library/timeit.html
+        - https://stackoverflow.com/questions/7370801/how-to-measure-elapsed-time-in-python
+    severity: WARNING