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

Side by Side Diff: tests/gcl_unittest.py

Issue 115534: When -s or --server is used, don't try the patch. (Closed)
Patch Set: Patch fixed Created 11 years, 7 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 unified diff | Download patch
« no previous file with comments | « gcl.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2009 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2009 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Unit tests for gcl.py.""" 6 """Unit tests for gcl.py."""
7 7
8 import StringIO 8 import StringIO
9 import os 9 import os
10 import sys 10 import sys
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 files = [('M', 'foo'), ('A', 'bar')] 100 files = [('M', 'foo'), ('A', 'bar')]
101 o = gcl.ChangeInfo('name2', 'issue2', 'description2', files) 101 o = gcl.ChangeInfo('name2', 'issue2', 'description2', files)
102 self.assertEquals(o.name, 'name2') 102 self.assertEquals(o.name, 'name2')
103 self.assertEquals(o.issue, 'issue2') 103 self.assertEquals(o.issue, 'issue2')
104 self.assertEquals(o.description, 'description2') 104 self.assertEquals(o.description, 'description2')
105 self.assertEquals(o.files, files) 105 self.assertEquals(o.files, files)
106 self.assertEquals(o.patch, None) 106 self.assertEquals(o.patch, None)
107 self.assertEquals(o.FileList(), ['foo', 'bar']) 107 self.assertEquals(o.FileList(), ['foo', 'bar'])
108 108
109 109
110 class UploadCLUnittest(GclTestsBase):
111 def setUp(self):
112 GclTestsBase.setUp(self)
113 self.mox = mox.Mox()
114 self._os_chdir = gcl.os.chdir
115 gcl.os.chdir = self.mox.CreateMockAnything()
116 self._os_close = gcl.os.close
117 gcl.os.close = self.mox.CreateMockAnything()
118 self._os_getcwd = gcl.os.getcwd
119 gcl.os.getcwd = self.mox.CreateMockAnything()
120 self._os_remove = gcl.os.remove
121 gcl.os.remove = self.mox.CreateMockAnything()
122 self._os_write = gcl.os.write
123 gcl.os.write = self.mox.CreateMockAnything()
124 self._tempfile = gcl.tempfile
125 gcl.tempfile = self.mox.CreateMockAnything()
126 self._upload_RealMain = gcl.upload.RealMain
127 gcl.upload.RealMain = self.mox.CreateMockAnything()
128 self._DoPresubmitChecks = gcl.DoPresubmitChecks
129 gcl.DoPresubmitChecks = self.mox.CreateMockAnything()
130 self._GenerateDiff = gcl.GenerateDiff
131 gcl.GenerateDiff = self.mox.CreateMockAnything()
132 self._GetCodeReviewSetting = gcl.GetCodeReviewSetting
133 gcl.GetCodeReviewSetting = self.mox.CreateMockAnything()
134 self._GetRepositoryRoot = gcl.GetRepositoryRoot
135 gcl.GetRepositoryRoot = self.mox.CreateMockAnything()
136 self._SendToRietveld = gcl.SendToRietveld
137 gcl.SendToRietveld = self.mox.CreateMockAnything()
138 self._TryChange = gcl.TryChange
139 gcl.TryChange = self.mox.CreateMockAnything()
140
141 def tearDown(self):
142 GclTestsBase.tearDown(self)
143 gcl.os.chdir = self._os_chdir
144 gcl.os.close = self._os_close
145 gcl.os.getcwd = self._os_getcwd
146 gcl.os.remove = self._os_remove
147 gcl.os.write = self._os_write
148 gcl.tempfile = self._tempfile
149 gcl.upload.RealMain = self._upload_RealMain
150 gcl.DoPresubmitChecks = self._DoPresubmitChecks
151 gcl.GenerateDiff = self._GenerateDiff
152 gcl.GetCodeReviewSetting = self._GetCodeReviewSetting
153 gcl.GetRepositoryRoot = self._GetRepositoryRoot
154 gcl.SendToRietveld = self._SendToRietveld
155 gcl.TryChange = self._TryChange
156
157 def testNew(self):
158 change_info = gcl.ChangeInfo('naame', 'iissue', 'deescription',
159 ['aa', 'bb'])
160 change_info.Save = self.mox.CreateMockAnything()
161 args = ['--foo=bar']
162 change_info.Save()
163 gcl.DoPresubmitChecks(change_info, committing=False).AndReturn(True)
164 gcl.GetCodeReviewSetting('CODE_REVIEW_SERVER').AndReturn('my_server')
165 gcl.os.getcwd().AndReturn('somewhere')
166 gcl.os.chdir(gcl.GetRepositoryRoot().AndReturn(None))
167 gcl.GenerateDiff(change_info.FileList())
168 gcl.upload.RealMain(['upload.py', '-y', '--server=my_server', '--foo=bar',
169 "--message=''", '--issue=iissue'], change_info.patch).AndReturn(("1",
170 "2"))
171 gcl.SendToRietveld("/lint/issue%s_%s" % ('1', '2'), timeout=0.5)
172 gcl.GetCodeReviewSetting('TRY_ON_UPLOAD').AndReturn('True')
173 gcl.TryChange(change_info,
174 ['--issue', '1', '--patchset', '2'],
175 swallow_exception=True)
176 gcl.os.chdir('somewhere')
177 self.mox.ReplayAll()
178 gcl.UploadCL(change_info, args)
179 self.mox.VerifyAll()
180
181 def testServerOverride(self):
182 change_info = gcl.ChangeInfo('naame', '', 'deescription',
183 ['aa', 'bb'])
184 change_info.Save = self.mox.CreateMockAnything()
185 args = ['--server=a']
186 change_info.Save()
187 gcl.DoPresubmitChecks(change_info, committing=False).AndReturn(True)
188 gcl.GetCodeReviewSetting('CODE_REVIEW_SERVER').AndReturn('my_server')
189 gcl.tempfile.mkstemp(text=True).AndReturn((42, 'descfile'))
190 gcl.os.write(42, change_info.description)
191 gcl.os.close(42)
192 gcl.GetCodeReviewSetting('CC_LIST')
193 gcl.os.getcwd().AndReturn('somewhere')
194 gcl.os.chdir(gcl.GetRepositoryRoot().AndReturn(None))
195 gcl.GenerateDiff(change_info.FileList())
196 gcl.upload.RealMain(['upload.py', '-y', '--server=my_server', '--server=a',
197 "--description_file=descfile",
198 "--message=deescription"], change_info.patch).AndReturn(("1", "2"))
199 gcl.os.remove('descfile')
200 gcl.SendToRietveld("/lint/issue%s_%s" % ('1', '2'), timeout=0.5)
201 #gcl.GetCodeReviewSetting('TRY_ON_UPLOAD').AndReturn('True')
202 #gcl.TryChange(change_info,
203 # ['--issue', '1', '--patchset', '2'],
204 # swallow_exception=True)
205 gcl.os.chdir('somewhere')
206 self.mox.ReplayAll()
207 gcl.UploadCL(change_info, args)
208 self.mox.VerifyAll()
209
210 def testNoTry(self):
211 change_info = gcl.ChangeInfo('naame', '', 'deescription',
212 ['aa', 'bb'])
213 change_info.Save = self.mox.CreateMockAnything()
214 args = ['--no-try']
215 change_info.Save()
216 gcl.DoPresubmitChecks(change_info, committing=False).AndReturn(True)
217 gcl.GetCodeReviewSetting('CODE_REVIEW_SERVER').AndReturn('my_server')
218 gcl.tempfile.mkstemp(text=True).AndReturn((42, 'descfile'))
219 gcl.os.write(42, change_info.description)
220 gcl.os.close(42)
221 gcl.GetCodeReviewSetting('CC_LIST')
222 gcl.os.getcwd().AndReturn('somewhere')
223 gcl.os.chdir(gcl.GetRepositoryRoot().AndReturn(None))
224 gcl.GenerateDiff(change_info.FileList())
225 gcl.upload.RealMain(['upload.py', '-y', '--server=my_server',
226 "--description_file=descfile",
227 "--message=deescription"], change_info.patch).AndReturn(("1", "2"))
228 gcl.os.remove('descfile')
229 gcl.SendToRietveld("/lint/issue%s_%s" % ('1', '2'), timeout=0.5)
230 gcl.os.chdir('somewhere')
231 self.mox.ReplayAll()
232 gcl.UploadCL(change_info, args)
233 self.mox.VerifyAll()
234
235 def testNormal(self):
236 change_info = gcl.ChangeInfo('naame', '', 'deescription',
237 ['aa', 'bb'])
238 change_info.Save = self.mox.CreateMockAnything()
239 args = []
240 change_info.Save()
241 gcl.DoPresubmitChecks(change_info, committing=False).AndReturn(True)
242 gcl.GetCodeReviewSetting('CODE_REVIEW_SERVER').AndReturn('my_server')
243 gcl.tempfile.mkstemp(text=True).AndReturn((42, 'descfile'))
244 gcl.os.write(42, change_info.description)
245 gcl.os.close(42)
246 gcl.GetCodeReviewSetting('CC_LIST')
247 gcl.os.getcwd().AndReturn('somewhere')
248 gcl.os.chdir(gcl.GetRepositoryRoot().AndReturn(None))
249 gcl.GenerateDiff(change_info.FileList())
250 gcl.upload.RealMain(['upload.py', '-y', '--server=my_server',
251 "--description_file=descfile",
252 "--message=deescription"], change_info.patch).AndReturn(("1", "2"))
253 gcl.os.remove('descfile')
254 gcl.SendToRietveld("/lint/issue%s_%s" % ('1', '2'), timeout=0.5)
255 gcl.GetCodeReviewSetting('TRY_ON_UPLOAD').AndReturn('True')
256 gcl.TryChange(change_info,
257 ['--issue', '1', '--patchset', '2'],
258 swallow_exception=True)
259 gcl.os.chdir('somewhere')
260 self.mox.ReplayAll()
261 gcl.UploadCL(change_info, args)
262 self.mox.VerifyAll()
263
264
110 if __name__ == '__main__': 265 if __name__ == '__main__':
111 unittest.main() 266 unittest.main()
OLDNEW
« no previous file with comments | « gcl.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698