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

Side by Side Diff: dashboard/dashboard/pinpoint/models/change/change_test.py

Issue 3013713002: [pinpoint] Calculate distances between Changes.
Patch Set: Created 3 years, 3 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
OLDNEW
1 # Copyright 2016 The Chromium Authors. All rights reserved. 1 # Copyright 2016 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import mock 5 import mock
6 6
7 from dashboard.common import namespaced_stored_object 7 from dashboard.common import namespaced_stored_object
8 from dashboard.common import testing_common 8 from dashboard.common import testing_common
9 from dashboard.pinpoint.models.change import change 9 from dashboard.pinpoint.models.change import change
10 from dashboard.pinpoint.models.change import commit 10 from dashboard.pinpoint.models.change import commit
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 self.addCleanup(patcher.stop) 129 self.addCleanup(patcher.stop)
130 file_contents = patcher.start() 130 file_contents = patcher.start()
131 def _FileContents(repository_url, git_hash, path): 131 def _FileContents(repository_url, git_hash, path):
132 del path 132 del path
133 if repository_url != _CHROMIUM_URL: 133 if repository_url != _CHROMIUM_URL:
134 return 'deps = {}' 134 return 'deps = {}'
135 if git_hash <= 4: # DEPS roll at chromium@5 135 if git_hash <= 4: # DEPS roll at chromium@5
136 return 'deps = {"chromium/catapult": "%s@0"}' % (_CATAPULT_URL + '.git') 136 return 'deps = {"chromium/catapult": "%s@0"}' % (_CATAPULT_URL + '.git')
137 else: 137 else:
138 return 'deps = {"chromium/catapult": "%s@9"}' % _CATAPULT_URL 138 return 'deps = {"chromium/catapult": "%s@9"}' % _CATAPULT_URL
139 file_contents.side_effect = _FileContents 139 file_contents.side_effect = _FileContents
perezju 2017/09/19 15:58:05 I would like to see a test with nesteded DEPS, at
140 140
141 def testDifferingPatch(self): 141 def testDifferingPatch(self):
142 change_a = change.Change((commit.Commit('chromium', '0e57e2b'),)) 142 change_a = change.Change((commit.Commit('chromium', '0e57e2b'),))
143 change_b = change.Change( 143 change_b = change.Change(
144 (commit.Commit('chromium', 'babe852'),), 144 (commit.Commit('chromium', 'babe852'),),
145 patch=patch.Patch('https://codereview.chromium.org', 2565263002, 20001)) 145 patch=patch.Patch('https://codereview.chromium.org', 2565263002, 20001))
146 with self.assertRaises(commit.NonLinearError): 146 with self.assertRaises(commit.NonLinearError):
147 change.Change.Midpoint(change_a, change_b) 147 change.Change.Midpoint(change_a, change_b)
148 148
149 def testDifferingRepository(self): 149 def testDifferingRepository(self):
150 change_a = change.Change((commit.Commit('chromium', '0e57e2b'),)) 150 change_a = change.Change((commit.Commit('chromium', '0e57e2b'),))
151 change_b = change.Change((commit.Commit('not_chromium', 'babe852'),)) 151 change_b = change.Change((commit.Commit('not_chromium', 'babe852'),))
152 with self.assertRaises(commit.NonLinearError): 152 with self.assertRaises(commit.NonLinearError):
153 change.Change.Midpoint(change_a, change_b) 153 change.Change.Midpoint(change_a, change_b)
154 154
155 def testDifferingCommitCount(self): 155 def testDifferingCommitCount(self):
156 change_a = change.Change((commit.Commit('chromium', 0),)) 156 change_a = change.Change((commit.Commit('chromium', 0),))
157 change_b = change.Change((commit.Commit('chromium', 9), 157 change_b = change.Change((commit.Commit('chromium', 9),
158 commit.Commit('not_chromium', 'babe852'))) 158 commit.Commit('not_chromium', 'babe852')))
159 with self.assertRaises(commit.NonLinearError): 159 with self.assertRaises(commit.NonLinearError):
160 change.Change.Midpoint(change_a, change_b) 160 change.Change.Midpoint(change_a, change_b)
161 161
162 def testSameChange(self): 162 def testSameChange(self):
163 change_a = change.Change((commit.Commit('chromium', 0),)) 163 change_a = change.Change((commit.Commit('chromium', 0),))
164 change_b = change.Change((commit.Commit('chromium', 0),)) 164 change_b = change.Change((commit.Commit('chromium', 0),))
165 with self.assertRaises(commit.NonLinearError): 165 expected = change_a, (0, 0)
166 change.Change.Midpoint(change_a, change_b) 166 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected)
167 167
168 def testAdjacentWithNoDepsRoll(self): 168 def testAdjacentWithNoDepsRoll(self):
169 change_a = change.Change((commit.Commit('chromium', 0),)) 169 change_a = change.Change((commit.Commit('chromium', 0),))
170 change_b = change.Change((commit.Commit('chromium', 1),)) 170 change_b = change.Change((commit.Commit('chromium', 1),))
171 with self.assertRaises(commit.NonLinearError): 171 expected = change_a, (0, 1)
172 change.Change.Midpoint(change_a, change_b) 172 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected)
173 173
174 def testAdjacentWithDepsRoll(self): 174 def testAdjacentWithDepsRoll(self):
175 change_a = change.Change((commit.Commit('chromium', 4),)) 175 change_a = change.Change((commit.Commit('chromium', 4),))
176 change_b = change.Change((commit.Commit('chromium', 5),)) 176 change_b = change.Change((commit.Commit('chromium', 5),))
177 expected = change.Change((commit.Commit('chromium', 4), 177 expected = change.Change((commit.Commit('chromium', 4),
178 commit.Commit('catapult', 4))) 178 commit.Commit('catapult', 4))), (4, 5)
179 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected) 179 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected)
180 180
181 def testNotAdjacent(self): 181 def testNotAdjacent(self):
182 change_a = change.Change((commit.Commit('chromium', 0),)) 182 change_a = change.Change((commit.Commit('chromium', 0),))
183 change_b = change.Change((commit.Commit('chromium', 9),)) 183 change_b = change.Change((commit.Commit('chromium', 9),))
184 self.assertEqual(change.Change.Midpoint(change_a, change_b), 184 expected = change.Change((commit.Commit('chromium', 4),)), (4, 5)
185 change.Change((commit.Commit('chromium', 4),))) 185 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected)
186 186
187 def testDepsRollLeft(self): 187 def testDepsRollLeft(self):
188 change_a = change.Change((commit.Commit('chromium', 4),)) 188 change_a = change.Change((commit.Commit('chromium', 4),))
189 change_b = change.Change((commit.Commit('chromium', 4), 189 change_b = change.Change((commit.Commit('chromium', 4),
190 commit.Commit('catapult', 4))) 190 commit.Commit('catapult', 4)))
191 expected = change.Change((commit.Commit('chromium', 4), 191 expected = change.Change((commit.Commit('chromium', 4),
192 commit.Commit('catapult', 2))) 192 commit.Commit('catapult', 2))), (2, 2)
193 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected) 193 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected)
194 194
195 def testDepsRollRight(self): 195 def testDepsRollRight(self):
196 change_a = change.Change((commit.Commit('chromium', 4), 196 change_a = change.Change((commit.Commit('chromium', 4),
197 commit.Commit('catapult', 4))) 197 commit.Commit('catapult', 4)))
198 change_b = change.Change((commit.Commit('chromium', 5),)) 198 change_b = change.Change((commit.Commit('chromium', 5),))
199 expected = change.Change((commit.Commit('chromium', 4), 199 expected = change.Change((commit.Commit('chromium', 4),
200 commit.Commit('catapult', 6))) 200 commit.Commit('catapult', 6))), (2, 3)
201 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected) 201 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected)
202 202
203 def testAdjacentWithDepsRollAndDepAlreadyOverridden(self): 203 def testAdjacentWithDepsRollAndDepAlreadyOverridden(self):
204 change_a = change.Change((commit.Commit('chromium', 4),)) 204 change_a = change.Change((commit.Commit('chromium', 4),))
205 change_b = change.Change((commit.Commit('chromium', 5), 205 change_b = change.Change((commit.Commit('chromium', 5),
206 commit.Commit('catapult', 4))) 206 commit.Commit('catapult', 4)))
207 expected = change.Change((commit.Commit('chromium', 4), 207 expected = change.Change((commit.Commit('chromium', 4),
208 commit.Commit('catapult', 2))) 208 commit.Commit('catapult', 2))), (2, 2)
209 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected) 209 self.assertEqual(change.Change.Midpoint(change_a, change_b), expected)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698