Commit b742c796 authored by Dom Sekotill's avatar Dom Sekotill
Browse files

Make JSON '.messages' match builtin JSON reporter

… this is what pylint-json2html expects.
parent cf9f928e
Loading
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -29,31 +29,31 @@ class JSONStatsReporter:
	"""

	def __init__(self, options, parent=None):
		self.parent_reporter = parent or pylint.reporters.BaseReporter()
		self.json_reporter = pylint.reporters.JSONReporter(parent.out if parent else None)
		self.options = options
		self.parent = parent or pylint.reporters.BaseReporter()
		self.messages = []

	def __getattr__(self, name):
		return getattr(self.parent, name)
		return getattr(self.parent_reporter, name)

	@property
	def linter(self):
		"""Proxy of the parent's linter"""
		return self.parent.linter
		return self.parent_reporter.linter

	@linter.setter
	def linter(self, linter):
		self.parent.linter = linter
		self.parent_reporter.linter = linter

	def handle_message(self, msg):
		"""Lint message handling callback"""
		self.messages.append(msg)
		self.parent.handle_message(msg)
		self.json_reporter.handle_message(msg)
		self.parent_reporter.handle_message(msg)

	def on_close(self, stats, previous_stats):
		"""Post-linting callback; save the lint data as a JSON file"""
		report = dict(
			messages=self.messages,
			messages=self.json_reporter.messages,
			stats=stats,
			previous=previous_stats,
		)