DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (b6057e17f856)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
# 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/.

from __future__ import unicode_literals

import string

manifest_template = """# THIS FILE IS AUTOGENERATED BY ${caller} - DO NOT EDIT
[DEFAULT]
support-files =
${supportfiles}

${tests}
"""

reftest_template = """# THIS FILE IS AUTOGENERATED BY ${caller} - DO NOT EDIT

${reftests}
"""



def substManifest(caller, test_files, support_files):
    test_files = [f.lstrip('/') for f in test_files]
    support_files = [f.lstrip('/') for f in support_files]

    return string.Template(manifest_template).substitute({
        'caller': caller,
        'supportfiles': '\n'.join('  %s' % f for f in sorted(support_files)),
        'tests': '\n'.join('[%s]' % f for f in sorted(test_files))
    })


def substReftestList(caller, tests):
    def reftests(tests):
        return "\n".join(" ".join(line) for line in tests)

    return string.Template(reftest_template).substitute({
        "caller": caller,
        "reftests": reftests(tests),
    })