Fix Gerrit git cl land and add test.
R=andybons@chromium.org
BUG=641127
Review-Url: https://codereview.chromium.org/2280563003
diff --git a/tests/git_cl_test.py b/tests/git_cl_test.py
index 47eaaf7..9796b2b 100755
--- a/tests/git_cl_test.py
+++ b/tests/git_cl_test.py
@@ -1894,6 +1894,23 @@
]
cl._codereview_impl._GerritCommitMsgHookCheck(offer_removal=True)
+ def test_GerritCmdLand(self):
+ self.calls += [
+ ((['git', 'symbolic-ref', 'HEAD'],), 'feature'),
+ ((['git', 'config', 'branch.feature.gerritsquashhash'],),
+ 'deadbeaf'),
+ ((['git', 'diff', 'deadbeaf'],), ''), # No diff.
+ ((['git', 'config', 'branch.feature.gerritserver'],),
+ 'chromium-review.googlesource.com'),
+ ]
+ cl = git_cl.Changelist(issue=123, codereview='gerrit')
+ cl._codereview_impl._GetChangeDetail = lambda _: {
+ 'labels': {},
+ 'current_revision': 'deadbeaf',
+ }
+ cl._codereview_impl.SubmitIssue = lambda wait_for_merge: None
+ self.assertEqual(0, cl.CMDLand(force=True, bypass_hooks=True, verbose=True))
+
if __name__ == '__main__':
git_cl.logging.basicConfig(