Commit Diff


commit - 190212ab3579321481115e04bb40758ae2c5ab5d
commit + 73014509f73228fdc6dac21e5c61f8ba22dc3bad
blob - fb64aade47c83a687018537cc29308373dd4a6a5
blob + 43b609cb83913e677b99670e482b6190ea541828
--- rules/python/flakiness/missed_retries.py
+++ rules/python/flakiness/missed_retries.py
@@ -1,9 +1,25 @@
 from requests.adapters import HTTPAdapter
+import requests
+
+url = "https://bronevichok.ru/"
+
 s = requests.Session()
 # rule-id: missed_retries
-s.mount('https://bronevichok.ru/', requests.adapters.HTTPAdapter(x))
+s.mount(url, HTTPAdapter())
 
+# ok: missed_retries
+s.mount(url, HTTPAdapter(max_retries=3))
+
 from urllib3 import PoolManager, Retry
+http = PoolManager()
 # rule-id: missed_retries
+response = http.request('GET', url)
+
+retries = Retry(connect=5, read=2, redirect=5)
+http = PoolManager(retries=retries)
+# ok: missed_retries
+response = http.request('GET', url)
+
 http = PoolManager()
-response = http.request('GET', 'https://bronevichok.ru/')
+# ok: missed_retries
+response = http.request('GET', url, retries=Retry(10))
blob - 4dd44f3b1c144a4e41dbc6396dd5b934998d3454
blob + e7721f87bb1202f7cb44899b8cf8436c21094cfe
--- rules/python/flakiness/missed_retries.yaml
+++ rules/python/flakiness/missed_retries.yaml
@@ -1,18 +1,18 @@
 rules:
-- id: missed_retries
-  patterns:
-    - pattern-either: 
-      - pattern: |
-          requests.adapters.HTTPAdapter()
-      - pattern: |
-          requests.adapters.HTTPAdapter(max_retries=$X)
-      - pattern: |
-          urllib3.PoolManager(..., retries=$X)
-      - pattern: |
-          urllib3.PoolManager()
-  message: |
-    No retries on access to resources. Some functions doesn't have retry
-    options (like "psycopg2.connect()") so you need to implement youself.
-  languages:
-  - python
-  severity: WARNING
+  - id: missed_retries
+    patterns:
+      - pattern-either:
+          - pattern: |
+              requests.adapters.HTTPAdapter()
+          - pattern: |
+              requests.adapters.HTTPAdapter(max_retries=$X)
+          - pattern: |
+              urllib3.PoolManager(..., retries=$X)
+          - pattern: |
+              urllib3.PoolManager()
+    message: |
+        No retries on access to resources. Some functions doesn't have retry
+        options (like "psycopg2.connect()") so you need to implement youself.
+    languages:
+      - python
+    severity: WARNING