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

Side by Side Diff: appengine/findit/handlers/flake/test/check_flake_test.py

Issue 2195473002: [Findit] Dashboards and graph for regression range (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: put dashboard in table Created 4 years, 4 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 webapp2 5 import webapp2
6 6
7 from handlers.flake import check_flake 7 from handlers.flake import check_flake
8 from model.flake.master_flake_analysis import MasterFlakeAnalysis
9 from model import analysis_status
8 from waterfall.test import wf_testcase 10 from waterfall.test import wf_testcase
9 11
10 12
11 class CheckFlakeTest(wf_testcase.WaterfallTestCase): 13 class CheckFlakeTest(wf_testcase.WaterfallTestCase):
12 app_module = webapp2.WSGIApplication([ 14 app_module = webapp2.WSGIApplication([
13 ('/waterfall/check-flake', check_flake.CheckFlake), 15 ('/waterfall/check-flake', check_flake.CheckFlake),
14 ], debug=True) 16 ], debug=True)
15 17
16 def testBasicFlow(self): 18 def _CreateAndSaveMasterFlakeAnalysis(
19 self, master_name, builder_name, build_number,
20 step_name, test_name, status):
21 analysis = MasterFlakeAnalysis.Create(
22 master_name, builder_name, build_number, step_name, test_name)
23 analysis.status = status
24 analysis.put()
25 return analysis
26
27 def testBasicFlowNoData(self):
17 master_name = 'm' 28 master_name = 'm'
18 builder_name = 'b' 29 builder_name = 'b'
19 build_number = '123' 30 build_number = '123'
20 step_name = 's' 31 step_name = 's'
21 test_name = 't' 32 test_name = 't'
22 33
23 self.mock_current_user(user_email='test@chromium.org', is_admin=True) 34 self.mock_current_user(user_email='test@chromium.org', is_admin=True)
24 35
25 response = self.test_app.get('/waterfall/check-flake', params={ 36 response = self.test_app.get('/waterfall/check-flake', params={
26 'master_name': master_name, 37 'master_name': master_name,
27 'builder_name': builder_name, 38 'builder_name': builder_name,
28 'build_number': build_number, 39 'build_number': build_number,
29 'step_name': step_name, 40 'step_name': step_name,
30 'test_name': test_name}) 41 'test_name': test_name})
42
31 self.assertEquals(200, response.status_int) 43 self.assertEquals(200, response.status_int)
44
45 def testBasicFlowWithData(self):
46 master_name = 'm'
47 builder_name = 'b'
48 build_number = '123'
49 step_name = 's'
50 test_name = 't'
51
52 status = analysis_status.PENDING
53
54 master_flake_analysis = self._CreateAndSaveMasterFlakeAnalysis(
55 master_name, builder_name, build_number, step_name,
56 test_name, status)
57 master_flake_analysis.build_numbers.append(123)
lijeffrey 2016/08/02 21:21:51 nit: use int(build_number)
caiw 2016/08/02 21:47:06 Done.
58 master_flake_analysis.success_rates.append(.9)
lijeffrey 2016/08/02 21:21:51 nit: make 0.9 a variable called success_rate then
caiw 2016/08/02 21:47:06 Done.
59 master_flake_analysis.put()
60
61 self.mock_current_user(user_email='test@chromium.org', is_admin=True)
62
63 response = self.test_app.get('/waterfall/check-flake', params={
64 'master_name': master_name,
65 'builder_name': builder_name,
66 'build_number': build_number,
67 'step_name': step_name,
68 'test_name': test_name,
69 'format': 'json'})
70
71 self.assertEquals(200, response.status_int)
72 expected_check_flake_result ={
73 'success_rates': [[123,0.9]]
lijeffrey 2016/08/02 21:21:51 nit: space after ,
caiw 2016/08/02 21:47:06 Done.
74 }
75 self.assertEqual(expected_check_flake_result, response.json_body)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698