Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 | |
| 3 # found in the LICENSE file. | |
|
lijeffrey
2016/08/01 18:58:39
is there a reason for removing this?
caiw
2016/08/01 19:24:57
dunno how that happened... re-added.
| |
| 4 | |
| 5 import webapp2 | 1 import webapp2 |
| 6 | 2 |
| 7 from handlers.flake import check_flake | 3 from handlers.flake import check_flake |
| 4 | |
| 8 from waterfall.test import wf_testcase | 5 from waterfall.test import wf_testcase |
| 6 from model.flake.master_flake_analysis import MasterFlakeAnalysis | |
| 7 from model import analysis_status | |
| 9 | 8 |
| 10 | 9 |
| 11 class CheckFlakeTest(wf_testcase.WaterfallTestCase): | 10 class CheckFlakeTest(wf_testcase.WaterfallTestCase): |
| 12 app_module = webapp2.WSGIApplication([ | 11 app_module = webapp2.WSGIApplication([ |
| 13 ('/waterfall/check-flake', check_flake.CheckFlake), | 12 ('/waterfall/check-flake', check_flake.CheckFlake), |
| 14 ], debug=True) | 13 ], debug=True) |
| 15 | 14 |
| 16 def testBasicFlow(self): | 15 def _CreateAndSaveMasterFlakeAnalysis( |
| 16 self, master_name, builder_name, build_number, | |
| 17 step_name, test_name, status): | |
| 18 analysis = MasterFlakeAnalysis.Create( | |
| 19 master_name, builder_name, build_number, step_name, test_name) | |
| 20 analysis.status = status | |
| 21 analysis.put() | |
| 22 return analysis | |
| 23 | |
| 24 def setUp(self): | |
| 25 super(CheckFlakeTest, self).setUp() | |
| 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={ |
| 37 'master_name': master_name, | |
| 38 'builder_name': builder_name, | |
| 39 'build_number': build_number, | |
| 40 'step_name': step_name, | |
| 41 'test_name': test_name}) | |
| 42 | |
| 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) | |
| 58 master_flake_analysis.success_rates.append(.9) | |
| 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={ | |
| 26 'master_name': master_name, | 64 'master_name': master_name, |
| 27 'builder_name': builder_name, | 65 'builder_name': builder_name, |
| 28 'build_number': build_number, | 66 'build_number': build_number, |
| 29 'step_name': step_name, | 67 'step_name': step_name, |
| 30 'test_name': test_name}) | 68 'test_name': test_name}) |
| 69 | |
| 31 self.assertEquals(200, response.status_int) | 70 self.assertEquals(200, response.status_int) |
| OLD | NEW |