12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- #!/usr/bin/python
- #
- # Any copyright is dedicated to the Public Domain.
- # http://creativecommons.org/publicdomain/zero/1.0/
- #
- from __future__ import print_function
- from modules.scm import detect_scm_system
- from contextlib import closing
- import checkmozstyle
- import os
- import modules.cpplint as cpplint
- import StringIO
- TESTS = [
- # Empty patch
- {
- "patch": "tests/test1.patch",
- "cpp": "tests/test1.cpp",
- "out": "tests/test1.out"
- },
- # Bad header
- {
- "patch": "tests/test2.patch",
- "cpp": "tests/test2.cpp",
- "out": "tests/test2.out"
- },
- # Bad Description
- {
- "patch": "tests/test3.patch",
- "cpp": "tests/test3.cpp",
- "out": "tests/test3.out"
- },
- # readability tests
- {
- "patch": "tests/test4.patch",
- "cpp": "tests/test4.cpp",
- "out": "tests/test4.out"
- },
- # runtime tests
- {
- "patch": "tests/test5.patch",
- "cpp": "tests/test5.cpp",
- "out": "tests/test5.out"
- },
- ]
- def main():
- cwd = os.path.abspath('.')
- scm = detect_scm_system(cwd)
- cpplint.use_mozilla_styles()
- (args, flags) = cpplint.parse_arguments([])
- for test in TESTS:
- with open(test["patch"]) as fh:
- patch = fh.read()
- with closing(StringIO.StringIO()) as output:
- cpplint.set_stream(output)
- checkmozstyle.process_patch(patch, cwd, cwd, scm)
- result = output.getvalue()
- with open(test["out"]) as fh:
- expected_output = fh.read()
- test_status = "PASSED"
- if result != expected_output:
- test_status = "FAILED"
- print("TEST " + test["patch"] + " " + test_status)
- print("Got result:\n" + result + "Expected:\n" + expected_output)
- else:
- print("TEST " + test["patch"] + " " + test_status)
- if __name__ == "__main__":
- main()
|