Index: PRESUBMIT_test.py |
diff --git a/PRESUBMIT_test.py b/PRESUBMIT_test.py |
index 2aed5dfc1b4e074b5efa131b74da0000f4c891fc..b7031872b8b242bca04ebb717fbdcbf28d9074d5 100755 |
--- a/PRESUBMIT_test.py |
+++ b/PRESUBMIT_test.py |
@@ -413,6 +413,66 @@ class InvalidOSMacroNamesTest(unittest.TestCase): |
self.assertEqual(0, len(errors)) |
+class InvalidOverideAndFinalTest(unittest.TestCase): |
+ def testValidOverrideConstructs(self): |
+ mock_input_api = MockInputApi() |
+ lines = ['foo1() override;', |
+ 'foo2() final;', |
+ '#DEFINE OVERRIDE_METHOD_OVERLOAD', |
+ '#DEFINE FINAL_METHOD', |
+ '#DEFINE OVERRIDE_OVERRIDE_SOMETHING', |
+ '#DEFINE SOMETHING_OVERRIDE_SOMETHING', |
+ '#DEFINE SOMETHING_SOMETHING_OVERRIDE', |
+ '#DEFINE FINAL_OVERRIDE_FINAL', |
+ '#DEFINE SOMETHING_OVERRIDE_FINAL', |
+ '#DEFINE OVERRIDE_OVERRIDE_OVERRIDE', |
+ '#endif // FINAL_METHOD', |
+ '#endif // OVERRIDE_METHOD_OVERLOAD'] |
+ mock_file_h = MockFile('something.h', lines) |
+ mock_input_api.files = [mock_file_h] |
+ errors = PRESUBMIT._CheckForOverrideAndFinalRules(mock_input_api, |
+ MockOutputApi()) |
+ self.assertEqual(0, len(errors)) |
+ |
+ def testInvalidOverrideConstructsInHeaders(self): |
+ mock_input_api = MockInputApi() |
+ lines_h = ['foo1() OVERRIDE;'] |
+ lines_cc = ['foo2() FINAL;'] |
+ mock_file_cpp= MockFile('something.cpp', lines_h) |
M-A Ruel
2014/10/15 14:27:39
mock_file_cpp = MockFile('something.cpp', lines_h)
MRV
2014/10/15 15:03:27
Done.
|
+ mock_file_h = MockFile('something.h', lines_cc) |
+ mock_input_api.files = [mock_file_h, mock_file_cpp] |
+ errors = PRESUBMIT._CheckForOverrideAndFinalRules(mock_input_api, |
+ MockOutputApi()) |
+ self.assertEqual(1, len(errors)) |
+ |
+ def testInvalidOverrideConstructsInCpp(self): |
+ mock_input_api = MockInputApi() |
+ lines = ['foo2() FINAL;'] |
+ mock_file_cpp= MockFile('something.cpp', lines) |
+ mock_input_api.files = [mock_file_cpp] |
+ errors = PRESUBMIT._CheckForOverrideAndFinalRules(mock_input_api, |
+ MockOutputApi()) |
+ self.assertEqual(1, len(errors)) |
+ |
+ def testInvalidOverrideConstructsInCc(self): |
+ mock_input_api = MockInputApi() |
+ lines = ['foo3() override FINAL;'] |
+ mock_file_cc = MockFile('something.cc', lines) |
+ mock_input_api.files = [mock_file_cc] |
+ errors = PRESUBMIT._CheckForOverrideAndFinalRules(mock_input_api, |
+ MockOutputApi()) |
+ self.assertEqual(1, len(errors)) |
+ |
+ def testInvalidOverrideConstructsInMm(self): |
+ mock_input_api = MockInputApi() |
+ lines = ['foo4() OVERRIDE final;'] |
+ mock_file_mm = MockFile('something.mm', lines) |
+ mock_input_api.files = [mock_file_mm] |
+ errors = PRESUBMIT._CheckForOverrideAndFinalRules(mock_input_api, |
+ MockOutputApi()) |
+ self.assertEqual(1, len(errors)) |
+ |
+ |
class InvalidIfDefinedMacroNamesTest(unittest.TestCase): |
def testInvalidIfDefinedMacroNames(self): |
lines = ['#if defined(TARGET_IPHONE_SIMULATOR)', |