tests/filterpyflakes.py
changeset 14209 08d84bdce1a5
parent 14176 dea68bddfb87
child 19335 77440de177f7
equal deleted inserted replaced
14208:d62d597b8974 14209:08d84bdce1a5
     1 #!/usr/bin/env python
     1 #!/usr/bin/env python
     2 
     2 
     3 # Filter output by pyflakes to control which warnings we check
     3 # Filter output by pyflakes to control which warnings we check
     4 
     4 
     5 import sys, re
     5 import sys, re, os
     6 
     6 
     7 def makekey(message):
     7 def makekey(message):
     8     # "path/file:line: message"
     8     # "path/file:line: message"
     9     match = re.search(r"(line \d+)", message)
     9     match = re.search(r"(line \d+)", message)
    10     line = ''
    10     line = ''
    23             r"local variable '.*' is assigned to but never used",
    23             r"local variable '.*' is assigned to but never used",
    24             r"unable to detect undefined names",
    24             r"unable to detect undefined names",
    25            ]
    25            ]
    26     if not re.search('|'.join(pats), line):
    26     if not re.search('|'.join(pats), line):
    27         continue
    27         continue
       
    28     fn = line.split(':', 1)[0]
       
    29     f = open(os.path.join(os.path.dirname(os.path.dirname(__file__)), fn))
       
    30     data = f.read()
       
    31     f.close()
       
    32     if 'no-check-code' in data:
       
    33         continue
    28     lines.append(line)
    34     lines.append(line)
    29 
    35 
    30 for line in sorted(lines, key = makekey):
    36 for line in sorted(lines, key = makekey):
    31     sys.stdout.write(line)
    37     sys.stdout.write(line)
    32 print
    38 print