forked from mirrors/gecko-dev
Backed out changeset 332ce0963b4e (bug 1633039)
Backed out changeset a9904cbc40d9 (bug 1633037)
Backed out changeset d06b0ec349f8 (bug 1599658)
Backed out changeset 8fd300cad80f (bug 1633016)
Backed out changeset f8820941c703 (bug 1632916)
Backed out changeset ac9c2c8746ed (bug 1632920)
75 lines
1.9 KiB
Python
75 lines
1.9 KiB
Python
# vim: set ts=8 sts=4 et sw=4 tw=99:
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
# ----------------------------------------------------------------------------
|
|
# This script checks encoding of the files that define JSErrorFormatStrings.
|
|
#
|
|
# JSErrorFormatString.format member should be in ASCII encoding.
|
|
# ----------------------------------------------------------------------------
|
|
|
|
from __future__ import absolute_import
|
|
from __future__ import print_function
|
|
|
|
import os
|
|
import sys
|
|
|
|
from mozversioncontrol import get_repository_from_env
|
|
|
|
|
|
scriptname = os.path.basename(__file__)
|
|
expected_encoding = 'ascii'
|
|
|
|
# The following files don't define JSErrorFormatString.
|
|
ignore_files = [
|
|
'dom/base/domerr.msg',
|
|
'js/xpconnect/src/xpc.msg',
|
|
]
|
|
|
|
|
|
def log_pass(filename, text):
|
|
print('TEST-PASS | {} | {} | {}'.format(scriptname, filename, text))
|
|
|
|
|
|
def log_fail(filename, text):
|
|
print('TEST-UNEXPECTED-FAIL | {} | {} | {}'.format(scriptname, filename,
|
|
text))
|
|
|
|
|
|
def check_single_file(filename):
|
|
with open(filename, 'rb') as f:
|
|
data = f.read()
|
|
try:
|
|
data.decode(expected_encoding)
|
|
except Exception:
|
|
log_fail(filename, 'not in {} encoding'.format(expected_encoding))
|
|
|
|
log_pass(filename, 'ok')
|
|
return True
|
|
|
|
|
|
def check_files():
|
|
result = True
|
|
|
|
with get_repository_from_env() as repo:
|
|
root = repo.path
|
|
|
|
for filename in repo.get_files_in_working_directory():
|
|
if filename.endswith('.msg'):
|
|
if filename not in ignore_files:
|
|
if not check_single_file(os.path.join(root, filename)):
|
|
result = False
|
|
|
|
return result
|
|
|
|
|
|
def main():
|
|
if not check_files():
|
|
sys.exit(1)
|
|
|
|
sys.exit(0)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|