1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6 Presubmit for Chromium HTML/CSS/JS resources. See chrome/browser/PRESUBMIT.py.
12 class ResourceChecker(object):
13 def __init__(self
, input_api
, output_api
, file_filter
=None):
14 self
.input_api
= input_api
15 self
.output_api
= output_api
16 self
.file_filter
= file_filter
18 def IncludeCheck(self
, line_number
, line
):
19 return regex_check
.RegexCheck(self
.input_api
.re
, line_number
, line
,
20 "(</include>|<include.*/>)", "Closing <include> tags is unnecessary.")
23 """Check for violations of the Chromium web development style guide. See
24 http://chromium.org/developers/web-development-style-guide
28 affected_files
= self
.input_api
.change
.AffectedFiles(
29 file_filter
=self
.file_filter
, include_deletes
=False)
31 for f
in affected_files
:
34 for line_number
, line
in enumerate(f
.NewContents(), start
=1):
35 error
= self
.IncludeCheck(line_number
, line
)
40 abs_local_path
= f
.AbsoluteLocalPath()
41 file_indicator
= 'Found resources style issues in %s' % abs_local_path
42 prompt_msg
= file_indicator
+ '\n\n' + '\n'.join(errors
) + '\n'
43 results
.append(self
.output_api
.PresubmitPromptWarning(prompt_msg
))