Files
zulip/tools/check-urls
Anders Kaseorg 037f696d26 Enable pycodestyle W605 (invalid escape sequence).
The only changes visible at the AST level, checked using
https://github.com/asottile/astpretty, are

zerver/lib/test_fixtures.py:
'\x1b\\[(1|0)m' ↦ '\\x1b\\[(1|0)m'
'\\[[X| ]\\] (\\d+_.+)\n' ↦ '\\[[X| ]\\] (\\d+_.+)\\n'

which is fine because re treats '\\x1b' and '\\n' the same way as
'\x1b' and '\n'.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2018-07-03 16:54:46 +02:00

29 lines
758 B
Python
Executable File

#!/usr/bin/env python3
import re
import sys
def check_urls():
# type: () -> None
url_files = ['zproject/urls.py',
'zproject/dev_urls.py',
'zproject/legacy_urls.py',
'analytics/urls.py',
'zilencer/urls.py']
pattern_1 = r"\s+\[?url\(.+,\s*'.+'\s*,\s*.*\)"
pattern_2 = r'\s+\[?url\(.+,\s*".+"\s*,\s*.*\)'
for url_file in url_files:
with open(url_file) as f:
data = f.read()
for pattern in (pattern_1, pattern_2):
r = re.search(pattern, data)
if r:
print('View should not be a string: {}'.format(r.group()))
sys.exit(1)
if __name__ == '__main__':
check_urls()