Ian Cordasco avatar Ian Cordasco committed 585e746

Rely on flakey's new ability to skip stdin errors

Resolves our half of tickets #53, and #53 I believe.

Comments (0)

Files changed (2)

 
 
 def check_code(code, ignore=(), complexity=-1):
-    warning = flakey.check(code, 'stdin')
-    warnings = flakey.print_messages(warning, ignore=ignore)
+    warning = flakey.check(code, '<stdin>')
+    warnings = flakey.print_messages(warning, ignore=ignore, code=code)
     warnings += pep8style.input_file(None, lines=code.split('\n'))
     if complexity > -1:
         warnings += mccabe.get_code_complexity(code, complexity)
 from __future__ import with_statement
 import re
 import os
+from io import StringIO
 
 pep8style = None
 
 _NOQA = re.compile(r'flake8[:=]\s*noqa', re.I | re.M)
 
 
-def skip_file(path):
+def skip_file(path, source=None):
     """Returns True if this header is found in path
 
     # flake8: noqa
     """
-    if not os.path.isfile(path):
+    if os.path.isfile(path):
+        f = open(path)
+    elif source:
+        f = StringIO(source)
+    else:
         return False
-    f = open(path)
+
     try:
         content = f.read()
     finally:
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.