Files
pytest2/py/test/plugin/pytest_pylint.py
Benjamin Peterson ee1747fcb4 make all syntax compatible with 3.1 and 2.5
--HG--
branch : trunk
2009-08-29 13:04:48 -05:00

37 lines
989 B
Python

"""pylint plugin
XXX: Currently in progress, NOT IN WORKING STATE.
"""
import py
pylint = py.test.importorskip("pylint.lint")
def pytest_addoption(parser):
group = parser.addgroup('pylint options')
group.addoption('--pylint', action='store_true',
default=False, dest='pylint',
help='run pylint on python files.')
def pytest_collect_file(path, parent):
if path.ext == ".py":
if parent.config.getvalue('pylint'):
return PylintItem(path, parent)
#def pytest_terminal_summary(terminalreporter):
# print 'placeholder for pylint output'
class PylintItem(py.test.collect.Item):
def runtest(self):
capture = py.io.StdCaptureFD()
try:
linter = pylint.lint.PyLinter()
linter.check(str(self.fspath))
finally:
out, err = capture.reset()
rating = out.strip().split('\n')[-1]
sys.stdout.write(">>>")
print(rating)
assert 0