1# This Source Code Form is subject to the terms of the Mozilla Public 2# License, v. 2.0. If a copy of the MPL was not distributed with this file, 3# You can obtain one at http://mozilla.org/MPL/2.0/. 4 5from __future__ import unicode_literals 6 7import string 8 9manifest_template = """# THIS FILE IS AUTOGENERATED BY ${caller} - DO NOT EDIT 10[DEFAULT] 11support-files = 12${supportfiles} 13 14${tests} 15""" 16 17reftest_template = """# THIS FILE IS AUTOGENERATED BY ${caller} - DO NOT EDIT 18 19${reftests} 20""" 21 22 23 24def substManifest(caller, test_files, support_files): 25 test_files = [f.lstrip('/') for f in test_files] 26 support_files = [f.lstrip('/') for f in support_files] 27 28 return string.Template(manifest_template).substitute({ 29 'caller': caller, 30 'supportfiles': '\n'.join(' %s' % f for f in sorted(support_files)), 31 'tests': '\n'.join('[%s]' % f for f in sorted(test_files)) 32 }) 33 34 35def substReftestList(caller, tests): 36 def reftests(tests): 37 return "\n".join(" ".join(line) for line in tests) 38 39 return string.Template(reftest_template).substitute({ 40 "caller": caller, 41 "reftests": reftests(tests), 42 }) 43 44