| Index: third_party/closure_compiler/compiler_test.py
|
| diff --git a/third_party/closure_compiler/compiler_test.py b/third_party/closure_compiler/compiler_test.py
|
| index 361d88c502cb0bccb1fff8741869cc904aa86d3e..36cf163b4b8b96103420923d9a582ebbf9f1b346 100755
|
| --- a/third_party/closure_compiler/compiler_test.py
|
| +++ b/third_party/closure_compiler/compiler_test.py
|
| @@ -56,8 +56,9 @@ class CompilerTest(unittest.TestCase):
|
| closure_args=args)
|
| return found_errors, stderr, out_file, out_map
|
|
|
| - def _runCheckerTestExpectError(self, source_code, expected_error):
|
| - _, stderr, out_file, out_map = self._runChecker(source_code)
|
| + def _runCheckerTestExpectError(self, source_code, expected_error,
|
| + closure_args=None):
|
| + _, stderr, out_file, out_map = self._runChecker(source_code, closure_args)
|
|
|
| self.assertTrue(expected_error in stderr,
|
| msg="Expected chunk: \n%s\n\nOutput:\n%s\n" % (
|
| @@ -342,6 +343,31 @@ testScript();
|
| "cr.exportPath();",
|
| "ERROR - cr.exportPath() should have at least 1 argument: path name")
|
|
|
| + def testMissingReturnAssertNotReached(self):
|
| + template = self._ASSERT_DEFINITION + """
|
| +/** @enum {number} */
|
| +var Enum = {FOO: 1, BAR: 2};
|
| +
|
| +/**
|
| + * @param {Enum} e
|
| + * @return {number}
|
| + */
|
| +function enumToVal(e) {
|
| + switch (e) {
|
| + case Enum.FOO:
|
| + return 1;
|
| + case Enum.BAR:
|
| + return 2;
|
| + }
|
| + %s
|
| +}
|
| +"""
|
| + args = ['warning_level=VERBOSE']
|
| + self._runCheckerTestExpectError(template % '', 'Missing return',
|
| + closure_args=args)
|
| + self._runCheckerTestExpectSuccess(template % 'assertNotReached();',
|
| + closure_args=args)
|
| +
|
|
|
| if __name__ == "__main__":
|
| unittest.main()
|
|
|