tests/filterpyflakes.py
changeset 21271 4adc090fa2fb
parent 21232 0768cda8b579
child 21293 507ce509fd22
--- a/tests/filterpyflakes.py	Fri May 09 08:44:53 2014 +0900
+++ b/tests/filterpyflakes.py	Fri May 09 08:44:53 2014 +0900
@@ -29,13 +29,16 @@
 for line in sys.stdin:
     # We whitelist tests (see more messages in pyflakes.messages)
     pats = [
-            r"imported but unused",
-            r"local variable '.*' is assigned to but never used",
-            r"unable to detect undefined names",
-            r"undefined name '.*'",
+            (r"imported but unused", None),
+            (r"local variable '.*' is assigned to but never used", None),
+            (r"unable to detect undefined names", None),
            ]
-    for msgtype, pat in enumerate(pats):
-        if re.search(pat, line):
+    if sys.version_info >= (2, 7):
+        pats.append((r"undefined name '.*'", None))
+    else:
+        pats.append((r"undefined name '.*'", r"undefined name 'memoryview'"))
+    for msgtype, (pat, excl) in enumerate(pats):
+        if re.search(pat, line) and (not excl or not re.search(excl, line)):
             break # pattern matches
     else:
         continue # no pattern matched, next line
@@ -50,3 +53,7 @@
 for msgtype, line in sorted(lines, key=makekey):
     sys.stdout.write(line)
 print
+
+# self test of "undefined name" detection for other than 'memoryview'
+if False:
+    print undefinedname