Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(174)

Unified Diff: tests/git_cl_test.py

Issue 1922133006: git_cl: Add the ability to set the description. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Patch Set: nits for tests. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « git_cl.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/git_cl_test.py
diff --git a/tests/git_cl_test.py b/tests/git_cl_test.py
index 571be654aa717d37e5f4fa1fd8680a1529d904cd..9b506fe20716af4b7314fbebf646783cf425bbea 100755
--- a/tests/git_cl_test.py
+++ b/tests/git_cl_test.py
@@ -21,6 +21,19 @@ import git_common
import git_footers
import subprocess2
+class ChangelistMock():
+ # A class variable so we can access it when we don't have access to the
+ # instance that's being set.
+ desc = ""
+ def __init__(self, **kwargs):
+ pass
+ def GetIssue(self):
+ return 1
+ def GetDescription(self):
+ return ChangelistMock.desc
+ def UpdateDescription(self, desc):
+ ChangelistMock.desc = desc
+
class PresubmitMock(object):
def __init__(self, *args, **kwargs):
self.reviewers = []
@@ -1385,15 +1398,8 @@ class TestGitCl(TestCase):
out = StringIO.StringIO()
self.mock(git_cl.sys, 'stdout', out)
- class MockChangelist():
- def __init__(self, **kwargs):
- pass
- def GetIssue(self):
- return 1
- def GetDescription(self):
- return 'foo'
-
- self.mock(git_cl, 'Changelist', MockChangelist)
+ self.mock(git_cl, 'Changelist', ChangelistMock)
+ ChangelistMock.desc = 'foo\n'
self.assertEqual(0, git_cl.main(['description', '-d']))
self.assertEqual('foo\n', out.getvalue())
@@ -1423,6 +1429,34 @@ class TestGitCl(TestCase):
'description', 'https://code.review.org/123123', '-d', '--gerrit']))
self.assertEqual('foobar\n', out.getvalue())
+ def test_description_set_raw(self):
+ out = StringIO.StringIO()
+ self.mock(git_cl.sys, 'stdout', out)
+
+ self.mock(git_cl, 'Changelist', ChangelistMock)
+ class TMP():
+ def splitlines(self):
+ return ['hihi']
+
+ self.mock(git_cl.sys, 'stdin', TMP())
+
+ self.assertEqual(0, git_cl.main(['description', '-n', 'hihi']))
+ self.assertEqual('hihi', ChangelistMock.desc)
+
+ def test_description_set_stdin(self):
+ out = StringIO.StringIO()
+ self.mock(git_cl.sys, 'stdout', out)
+
+ self.mock(git_cl, 'Changelist', ChangelistMock)
+ class TMP():
+ def splitlines(self):
+ return ['hi', 'there']
+
+ self.mock(git_cl.sys, 'stdin', TMP())
+
+ self.assertEqual(0, git_cl.main(['description', '-n', '-']))
+ self.assertEqual('hi\nthere', ChangelistMock.desc)
+
if __name__ == '__main__':
git_cl.logging.basicConfig(
« no previous file with comments | « git_cl.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698