def test_exportable_commits_since_not_require_clean(self): host = MockHost() host.executive = mock_git_commands({ 'diff-tree': 'third_party/WebKit/LayoutTests/external/wpt/some_files', 'footers': 'cr-rev-position', 'format-patch': 'hey I\'m a patch', 'rev-list': 'add087a97844f4b9e307d9a216940582d96db306\n' 'add087a97844f4b9e307d9a216940582d96db307\n' 'add087a97844f4b9e307d9a216940582d96db308\n' }) local_wpt = MockLocalWPT(test_patch=[ (True, ''), (False, 'patch failure'), (True, ''), ]) commits, _ = _exportable_commits_since('beefcafe', host, local_wpt, MockWPTGitHub(pull_requests=[]), require_clean=False) self.assertEqual(len(commits), 3)
def test_exportable_commits_since(self): host = MockHost() host.executive = mock_git_commands({ 'show': 'fake message', 'rev-list': 'add087a97844f4b9e307d9a216940582d96db306', 'rev-parse': 'add087a97844f4b9e307d9a216940582d96db306', 'crrev-parse': 'add087a97844f4b9e307d9a216940582d96db306', 'diff': 'fake diff', 'diff-tree': 'third_party/WebKit/LayoutTests/external/wpt/some\n' 'third_party/WebKit/LayoutTests/external/wpt/files', 'format-patch': 'hey I\'m a patch', 'footers': 'cr-rev-position', }, strict=True) commits, _ = _exportable_commits_since( 'beefcafe', host, MockLocalWPT(test_patch=[(True, '')]), MockWPTGitHub(pull_requests=[])) self.assertEqual(len(commits), 1) self.assertIsInstance(commits[0], ChromiumCommit) self.assertEqual(host.executive.calls, [ ['git', 'rev-parse', '--show-toplevel'], ['git', 'rev-list', 'beefcafe..HEAD', '--reverse', '--', 'add087a97844f4b9e307d9a216940582d96db306/third_party/WebKit/LayoutTests/external/wpt/'], ['git', 'footers', '--position', 'add087a97844f4b9e307d9a216940582d96db306'], ['git', 'show', '--format=%B', '--no-patch', 'add087a97844f4b9e307d9a216940582d96db306'], ['git', 'diff-tree', '--name-only', '--no-commit-id', '-r', 'add087a97844f4b9e307d9a216940582d96db306', '--', '/mock-checkout/third_party/WebKit/LayoutTests/external/wpt'], ['git', 'format-patch', '-1', '--stdout', 'add087a97844f4b9e307d9a216940582d96db306', '--', 'third_party/WebKit/LayoutTests/external/wpt/some', 'third_party/WebKit/LayoutTests/external/wpt/files'], ])