blob: 2d0dc55c09274521bb423169217058bd470fe0d0 [file] [log] [blame]
Edward Lemur6d01f6d2017-09-14 17:02:01 +02001#!/usr/bin/env python2
charujain9893e252017-09-14 13:33:22 +02002import unittest
3
4import PRESUBMIT
5from presubmit_test_mocks import MockInputApi, MockOutputApi
6
7
8class CheckBugEntryField(unittest.TestCase):
9 def testCommitMessageBugEntryWithNoError(self):
10 mock_input_api = MockInputApi()
11 mock_output_api = MockOutputApi()
12 mock_input_api.change.BUG = 'webrtc:1234'
13 errors = PRESUBMIT.CheckCommitMessageBugEntry(mock_input_api,
Edward Lemur6d01f6d2017-09-14 17:02:01 +020014 mock_output_api)
charujain9893e252017-09-14 13:33:22 +020015 self.assertEqual(0, len(errors))
16
17 def testCommitMessageBugEntryReturnError(self):
18 mock_input_api = MockInputApi()
19 mock_output_api = MockOutputApi()
20 mock_input_api.change.BUG = 'webrtc:1234,webrtc=4321'
21 errors = PRESUBMIT.CheckCommitMessageBugEntry(mock_input_api,
Edward Lemur6d01f6d2017-09-14 17:02:01 +020022 mock_output_api)
charujain9893e252017-09-14 13:33:22 +020023 self.assertEqual(1, len(errors))
24 self.assertEqual(('Bogus BUG entry: webrtc=4321. Please specify'
25 ' the issue tracker prefix and the issue number,'
26 ' separated by a colon, e.g. webrtc:123 or'
27 ' chromium:12345.'), str(errors[0]))
28
29 def testCommitMessageBugEntryIsNone(self):
30 mock_input_api = MockInputApi()
31 mock_output_api = MockOutputApi()
32 mock_input_api.change.BUG = 'None'
33 errors = PRESUBMIT.CheckCommitMessageBugEntry(mock_input_api,
Edward Lemur6d01f6d2017-09-14 17:02:01 +020034 mock_output_api)
charujain9893e252017-09-14 13:33:22 +020035 self.assertEqual(0, len(errors))
36
37
38if __name__ == '__main__':
39 unittest.main()
40