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

Side by Side Diff: appengine/findit/waterfall/test/process_base_swarming_task_result_pipeline_test.py

Issue 2563383002: [Findit] Flake Checker: Extract commit position and git hash and display to UI for each analyzed bu… (Closed)
Patch Set: Fixing nit Created 4 years 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 datetime 5 import datetime
6 import mock 6 import mock
7 7
8 from model import analysis_status 8 from model import analysis_status
9 from model.flake.flake_swarming_task import FlakeSwarmingTask 9 from model.flake.flake_swarming_task import FlakeSwarmingTask
10 from model.flake.master_flake_analysis import MasterFlakeAnalysis 10 from model.flake.master_flake_analysis import MasterFlakeAnalysis
11 from model.wf_swarming_task import WfSwarmingTask 11 from model.wf_swarming_task import WfSwarmingTask
12 from waterfall import swarming_util 12 from waterfall import swarming_util
13 from waterfall import process_flake_swarming_task_result_pipeline
13 from waterfall.process_base_swarming_task_result_pipeline import ( 14 from waterfall.process_base_swarming_task_result_pipeline import (
14 ProcessBaseSwarmingTaskResultPipeline) 15 ProcessBaseSwarmingTaskResultPipeline)
15 from waterfall.process_flake_swarming_task_result_pipeline import ( 16 from waterfall.process_flake_swarming_task_result_pipeline import (
16 ProcessFlakeSwarmingTaskResultPipeline) 17 ProcessFlakeSwarmingTaskResultPipeline)
17 from waterfall.process_swarming_task_result_pipeline import ( 18 from waterfall.process_swarming_task_result_pipeline import (
18 ProcessSwarmingTaskResultPipeline) 19 ProcessSwarmingTaskResultPipeline)
19 from waterfall.test import wf_testcase 20 from waterfall.test import wf_testcase
20 21
21 22
22 _ISOLATED_SERVER = 'https://isolateserver.appspot.com' 23 _ISOLATED_SERVER = 'https://isolateserver.appspot.com'
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 {}, 184 {},
184 ProcessBaseSwarmingTaskResultPipeline._CheckTestsRunStatuses( 185 ProcessBaseSwarmingTaskResultPipeline._CheckTestsRunStatuses(
185 self.pipeline, None, ())) 186 self.pipeline, None, ()))
186 187
187 def testCheckTestsRunStatuses(self): 188 def testCheckTestsRunStatuses(self):
188 tests_statuses = ( 189 tests_statuses = (
189 ProcessSwarmingTaskResultPipeline()._CheckTestsRunStatuses( 190 ProcessSwarmingTaskResultPipeline()._CheckTestsRunStatuses(
190 _SAMPLE_FAILURE_LOG)) 191 _SAMPLE_FAILURE_LOG))
191 self.assertEqual(_EXPECTED_TESTS_STATUS, tests_statuses) 192 self.assertEqual(_EXPECTED_TESTS_STATUS, tests_statuses)
192 193
193 def testMonitorSwarmingTaskTimeOut(self): 194 @mock.patch.object(process_flake_swarming_task_result_pipeline,
195 '_GetCommitPositionAndGitHash',
196 return_value=(12345, 'git_hash'))
197 def testMonitorSwarmingTaskTimeOut(self, _):
194 # Override swarming config settings to force a timeout. 198 # Override swarming config settings to force a timeout.
195 override_swarming_settings = { 199 override_swarming_settings = {
196 'task_timeout_hours': -1 200 'task_timeout_hours': -1
197 } 201 }
198 self.UpdateUnitTestConfigSettings( 202 self.UpdateUnitTestConfigSettings(
199 'swarming_settings', override_swarming_settings) 203 'swarming_settings', override_swarming_settings)
200 204
201 task = FlakeSwarmingTask.Create( 205 task = FlakeSwarmingTask.Create(
202 self.master_name, self.builder_name, self.build_number, self.step_name, 206 self.master_name, self.builder_name, self.build_number, self.step_name,
203 self.test_name) 207 self.test_name)
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 self.assertEqual(analysis_status.COMPLETED, task.status) 382 self.assertEqual(analysis_status.COMPLETED, task.status)
379 self.assertEqual(_EXPECTED_TESTS_STATUS, task.tests_statuses) 383 self.assertEqual(_EXPECTED_TESTS_STATUS, task.tests_statuses)
380 self.assertEqual( 384 self.assertEqual(
381 _EXPECTED_CLASSIFIED_TESTS, task.classified_tests) 385 _EXPECTED_CLASSIFIED_TESTS, task.classified_tests)
382 self.assertEqual(datetime.datetime(2016, 2, 10, 18, 32, 6, 538220), 386 self.assertEqual(datetime.datetime(2016, 2, 10, 18, 32, 6, 538220),
383 task.created_time) 387 task.created_time)
384 self.assertEqual(datetime.datetime(2016, 2, 10, 18, 32, 9, 90550), 388 self.assertEqual(datetime.datetime(2016, 2, 10, 18, 32, 9, 90550),
385 task.started_time) 389 task.started_time)
386 self.assertEqual(datetime.datetime(2016, 2, 10, 18, 33, 9), 390 self.assertEqual(datetime.datetime(2016, 2, 10, 18, 33, 9),
387 task.completed_time) 391 task.completed_time)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698