mongo/buildscripts/tests/test_validate_commit_message.py
stevegrossmongodb 1185833261 SERVER-90006 Fix up commit message validation logic (v7.0) (#22050)
(This is a copy of https://github.com/10gen/mongo/pull/21906, applied to
v7.0 branch)

Simplifies commit message validation to the simplest possible logic: a
straightforward regex on the PR title.

GitOrigin-RevId: b32cb8a74b3da014dac4fc658bf05b07cf32f8ea
2024-05-15 01:37:32 +00:00

32 lines
1.1 KiB
Python

"""Unit tests for the evergreen_task_timeout script."""
import unittest
from buildscripts.validate_commit_message import main, STATUS_OK, STATUS_ERROR
# pylint: disable=missing-docstring,no-self-use
class ValidateCommitMessageTest(unittest.TestCase):
def test_valid(self):
messages = [
"SERVER-44338",
"Revert \"SERVER-60",
"Import wiredtiger: 58115abb6fbb3c1cc7bfd087d41a47347bce9a69 from branch mongodb-4.4",
'Revert "Import wiredtiger: 58115abb6fbb3c1cc7bfd087d41a47347bce9a69 from branch mongodb-4.4"',
]
self.assertTrue(all(main([message]) == STATUS_OK for message in messages))
def test_invalid(self):
messages = [
"SERVER-", # missing number
"Revert SERVER-60", # missing quote before SERVER
"", # empty value
"nonsense", # nonsense value
]
self.assertTrue(all(main([message]) == STATUS_ERROR for message in messages))
def test_message_is_empty_list(self):
self.assertEqual(main([]), STATUS_ERROR)