aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
authorDhananjay Nakrani <dhananjaynakrani@gmail.com>2015-04-19 18:13:59 -0700
committerDhananjay Nakrani <dhananjaynakrani@gmail.com>2015-04-21 10:20:12 -0700
commit7453959426258fa85a94dc7b17373c3e6ce3a2e8 (patch)
treeb91a5f7cea6e3441067accaa8e0f02ca47ed9644 /python
parenta0295b74894813fa7abbd467c1622ce09d2db59d (diff)
downloadservo-7453959426258fa85a94dc7b17373c3e6ce3a2e8.tar.gz
servo-7453959426258fa85a94dc7b17373c3e6ce3a2e8.zip
Refactor tidy.py to reduce code duplication.
Diffstat (limited to 'python')
-rw-r--r--python/tidy.py58
1 files changed, 29 insertions, 29 deletions
diff --git a/python/tidy.py b/python/tidy.py
index 2288d07bdfe..f8c34a243e0 100644
--- a/python/tidy.py
+++ b/python/tidy.py
@@ -67,38 +67,38 @@ def check_license(contents):
yield (1, "incorrect license")
-def check_length(contents):
- lines = contents.splitlines(True)
- for idx, line in enumerate(lines):
- if len(line) >= 160:
- yield (idx + 1, "(much) overlong line")
+def check_length(idx, line):
+ if len(line) >= 160:
+ yield (idx + 1, "(much) overlong line")
+
+def check_whatwg_url(idx, line):
+ matches = re.findall(r'whatwg.org/multipage.*#', line);
+ if matches:
+ for i, match in enumerate(matches):
+ parts = match.split('multipage')
+ if len(parts[1]) > 1 and parts[1][1] != '#':
+ yield (idx + 1, "URL should not point to specific WHATWG multipage page!")
+
+def check_whitespace(idx, line):
+ if line[-1] == "\n":
+ line = line[:-1]
+ else:
+ yield (idx + 1, "no newline at EOF")
-def check_whatwg_url(contents):
- lines = contents.splitlines(True)
- for idx, line in enumerate(lines):
- matches = re.findall(r'whatwg.org/multipage.*#', line);
- if matches:
- for i, match in enumerate(matches):
- parts = match.split('multipage')
- if len(parts[1]) > 1 and parts[1][1] != '#':
- yield (idx + 1, "URL should not point to specific WHATWG multipage page!")
-
-def check_whitespace(contents):
- lines = contents.splitlines(True)
- for idx, line in enumerate(lines):
- if line[-1] == "\n":
- line = line[:-1]
- else:
- yield (idx + 1, "no newline at EOF")
+ if line.endswith(" "):
+ yield (idx + 1, "trailing whitespace")
- if line.endswith(" "):
- yield (idx + 1, "trailing whitespace")
+ if "\t" in line:
+ yield (idx + 1, "tab on line")
- if "\t" in line:
- yield (idx + 1, "tab on line")
+ if "\r" in line:
+ yield (idx + 1, "CR on line")
- if "\r" in line:
- yield (idx + 1, "CR on line")
+def check_whitespace_url_len(contents):
+ lines = contents.splitlines(True)
+ for idx, line in enumerate(lines):
+ for error in itertools.chain(check_length(idx, line), check_whitespace(idx, line), check_whatwg_url(idx, line)):
+ yield error
def collect_errors_for_files(files_to_check, checking_functions):
@@ -137,7 +137,7 @@ def scan():
all_files = collect_file_names(directories_to_check)
files_to_check = filter(should_check, all_files)
- checking_functions = [check_license, check_length, check_whitespace, check_whatwg_url]
+ checking_functions = [check_license, check_whitespace_url_len]
errors = collect_errors_for_files(files_to_check, checking_functions)
reftest_files = collect_file_names(reftest_directories)