Index: PRESUBMIT_test.py |
diff --git a/PRESUBMIT_test.py b/PRESUBMIT_test.py |
index 183ec6e54c839f71ad98827228ce195faa71819e..f650112be44fdccf66c9dba2afaaf04ee4f6101c 100755 |
--- a/PRESUBMIT_test.py |
+++ b/PRESUBMIT_test.py |
@@ -14,6 +14,30 @@ class MockInputApi(object): |
def __init__(self): |
self.re = re |
self.os_path = os.path |
+ self.files = [] |
+ |
+ def AddFile(self, f): |
M-A Ruel
2012/12/05 19:30:17
I don't think it's necessary.
|
+ self.files.append(f) |
+ |
+ def AffectedFiles(self): |
+ return self.files |
+ |
+ |
+class MockOutputApi(object): |
+ class PresubmitResult(object): |
+ def __init__(self, message, items=None, long_text=''): |
+ self.message = message |
+ self.items = items |
+ self.long_text = long_text |
+ |
+ class PresubmitError(PresubmitResult): |
+ pass |
+ |
+ class PresubmitPromptWarning(PresubmitResult): |
+ pass |
+ |
+ class PresubmitNotifyResult(PresubmitResult): |
+ pass |
class MockFile(object): |
@@ -201,5 +225,37 @@ class VersionControlerConflictsTest(unittest.TestCase): |
self.assertTrue('5' in errors[2]) |
+class BadExtensionsTest(unittest.TestCase): |
+ def testBadRejFile(self): |
+ mock_input_api = MockInputApi() |
+ mock_input_api.AddFile(MockFile('some/path/foo.cc', '')) |
M-A Ruel
2012/12/05 19:30:17
mock_input_api.files = [
MockFile(...),
..
|
+ mock_input_api.AddFile(MockFile('some/path/foo.cc.rej', '')) |
+ mock_input_api.AddFile(MockFile('some/path2/bar.h.rej', '')) |
+ |
+ results = PRESUBMIT._CheckPatchFiles(mock_input_api, MockOutputApi()) |
+ self.assertEqual(1, len(results)) |
+ self.assertEqual(2, len(results[0].items)) |
+ self.assertTrue('foo.cc.rej' in results[0].items[0]) |
+ self.assertTrue('bar.h.rej' in results[0].items[1]) |
+ |
+ def testBadOrigFile(self): |
+ mock_input_api = MockInputApi() |
+ mock_input_api.AddFile(MockFile('other/path/qux.h.orig', '')) |
+ mock_input_api.AddFile(MockFile('other/path/qux.h', '')) |
+ mock_input_api.AddFile(MockFile('other/path/qux.cc', '')) |
+ |
+ results = PRESUBMIT._CheckPatchFiles(mock_input_api, MockOutputApi()) |
+ self.assertEqual(1, len(results)) |
+ self.assertEqual(1, len(results[0].items)) |
+ self.assertTrue('qux.h.orig' in results[0].items[0]) |
+ |
+ def testGoodFiles(self): |
+ mock_input_api = MockInputApi() |
+ mock_input_api.AddFile(MockFile('other/path/qux.h', '')) |
+ mock_input_api.AddFile(MockFile('other/path/qux.cc', '')) |
+ results = PRESUBMIT._CheckPatchFiles(mock_input_api, MockOutputApi()) |
+ self.assertEqual(0, len(results)) |
+ |
+ |
if __name__ == '__main__': |
unittest.main() |