def test_extract_pr_numbers(self): log1 = generate_release_info.Log( 'sha1', 'author1', 'email1', 'msg(#1234)') log2 = generate_release_info.Log( 'sha2', 'author2', 'email2', 'msg#6789') log3 = generate_release_info.Log( 'sha2', 'author2', 'email2', 'msg(#4588)\n\n* Issue fixed(#5699)\n') log4 = generate_release_info.Log('sha2', 'author2', 'email2', 'msg1') actual_prs = generate_release_info.extract_pr_numbers([ log1, log2, log3, log4]) expected_prs = ['4588', '1234'] self.assertEqual(actual_prs, expected_prs)
def mock_gather_logs(unused_start, stop='HEAD'): new_log1 = generate_release_info.Log('sha1', 'author1', 'email1', 'message1') new_log2 = generate_release_info.Log('sha2', 'author2', 'email2', 'message2') old_log = generate_release_info.Log('sha3', 'author3', 'email3', 'message3') cherrypick_log = generate_release_info.Log('sha4', 'author4', 'email4', 'message4') if stop == 'HEAD': return [new_log1, new_log2, old_log, cherrypick_log] else: return [old_log]
def test_gather_logs_with_logs(self): def mock_run_cmd(unused_cmd): log1 = 'sha1{0}author1{0}email1{0}msg1'.format( generate_release_info.GROUP_SEP) log2 = 'sha2{0}author2{0}email2{0}msg2'.format( generate_release_info.GROUP_SEP) return '%s\x00%s' % (log1, log2) run_cmd_swap = self.swap(common, 'run_cmd', mock_run_cmd) with run_cmd_swap: actual_logs = generate_release_info.gather_logs('start') expected_logs = [ generate_release_info.Log('sha1', 'author1', 'email1', 'msg1'), generate_release_info.Log('sha2', 'author2', 'email2', 'msg2')] self.assertEqual(actual_logs, expected_logs)
def test_extract_issues(self): log1 = generate_release_info.Log( 'sha1', 'author1', 'email1', 'msg#1234') log2 = generate_release_info.Log( 'sha2', 'author2', 'email2', 'msg#6789') log3 = generate_release_info.Log( 'sha2', 'author2', 'email2', 'msg(#4588)') log4 = generate_release_info.Log('sha2', 'author2', 'email2', 'msg1') actual_issues = generate_release_info.extract_issues([ log1, log2, log3, log4]) expected_issues = { 'https://github.com/oppia/oppia/issues/1234', 'https://github.com/oppia/oppia/issues/4588', 'https://github.com/oppia/oppia/issues/6789'} self.assertEqual(actual_issues, expected_issues)