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

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

Issue 1778153002: [Findit] Strip platform from step_name before triggering try job. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: . Created 4 years, 9 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 time 5 import time
6 6
7 from testing_utils import testing 7 from testing_utils import testing
8 8
9 from model import wf_analysis_status 9 from model import wf_analysis_status
10 from model.wf_swarming_task import WfSwarmingTask 10 from model.wf_swarming_task import WfSwarmingTask
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 {'key': 'GTEST_SHARD_INDEX', 'value': '1'}, 104 {'key': 'GTEST_SHARD_INDEX', 'value': '1'},
105 {'key': 'GTEST_TOTAL_SHARDS', 'value': '5'}, 105 {'key': 'GTEST_TOTAL_SHARDS', 'value': '5'},
106 ], 106 ],
107 'execution_timeout_secs': 3600, 107 'execution_timeout_secs': 3600,
108 'extra_args': ['--flag=value', '--gtest_filter=d.f'], 108 'extra_args': ['--flag=value', '--gtest_filter=d.f'],
109 'grace_period_secs': 30, 109 'grace_period_secs': 30,
110 'idempotent': True, 110 'idempotent': True,
111 'inputs_ref': {'a': 1}, 111 'inputs_ref': {'a': 1},
112 'io_timeout_secs': 1200, 112 'io_timeout_secs': 1200,
113 }, 113 },
114 'tags': ['master:a', 'buildername:b'], 114 'tags': ['master:a', 'buildername:b', 'name:a_tests'],
115 'user': 'user', 115 'user': 'user',
116 }) 116 })
117 self.mock(swarming_util, 'GetSwarmingTaskRequest', 117 self.mock(swarming_util, 'GetSwarmingTaskRequest',
118 MockedGetSwarmingTaskRequest) 118 MockedGetSwarmingTaskRequest)
119 119
120 new_request_json = {} 120 new_request_json = {}
121 def MockedTriggerSwarmingTask(new_request, *_): 121 def MockedTriggerSwarmingTask(new_request, *_):
122 new_request_json.update(new_request.Serialize()) 122 new_request_json.update(new_request.Serialize())
123 return 'new_task_id' 123 return 'new_task_id'
124 self.mock(swarming_util, 'TriggerSwarmingTask', MockedTriggerSwarmingTask) 124 self.mock(swarming_util, 'TriggerSwarmingTask', MockedTriggerSwarmingTask)
125 125
126 def MockedGetSwarmingTaskName(*_): 126 def MockedGetSwarmingTaskName(*_):
127 return 'new_task_name' 127 return 'new_task_name'
128 self.mock(trigger_swarming_task_pipeline, '_GetSwarmingTaskName', 128 self.mock(trigger_swarming_task_pipeline, '_GetSwarmingTaskName',
129 MockedGetSwarmingTaskName) 129 MockedGetSwarmingTaskName)
130 130
131 self._MockGetSwarmingSettings() 131 self._MockGetSwarmingSettings()
132 132
133 master_name = 'm' 133 master_name = 'm'
134 builder_name = 'b' 134 builder_name = 'b'
135 build_number = 234 135 build_number = 234
136 step_name = 's' 136 step_name = 'a_tests on platform'
137 tests = ['a.b', 'a.c'] 137 tests = ['a.b', 'a.c']
138 138
139 expected_new_request_json = { 139 expected_new_request_json = {
140 'expiration_secs': 3600, 140 'expiration_secs': 3600,
141 'name': 'new_task_name', 141 'name': 'new_task_name',
142 'parent_task_id': '', 142 'parent_task_id': '',
143 'priority': 25, 143 'priority': 25,
144 'properties': { 144 'properties': {
145 'command': 'cmd', 145 'command': 'cmd',
146 'dimensions': [{'key': 'k', 'value': 'v'}], 146 'dimensions': [{'key': 'k', 'value': 'v'}],
147 'env': [ 147 'env': [
148 {'key': 'a', 'value': '1'}, 148 {'key': 'a', 'value': '1'},
149 ], 149 ],
150 'execution_timeout_secs': 3600, 150 'execution_timeout_secs': 3600,
151 'extra_args': [ 151 'extra_args': [
152 '--flag=value', '--gtest_repeat=10', 152 '--flag=value', '--gtest_repeat=10',
153 '--test-launcher-retry-limit=0', 153 '--test-launcher-retry-limit=0',
154 '--gtest_filter=a.b:a.c'], 154 '--gtest_filter=a.b:a.c'],
155 'grace_period_secs': 30, 155 'grace_period_secs': 30,
156 'idempotent': False, 156 'idempotent': False,
157 'inputs_ref': {'a': 1}, 157 'inputs_ref': {'a': 1},
158 'io_timeout_secs': 1200, 158 'io_timeout_secs': 1200,
159 }, 159 },
160 'tags': ['purpose:deflake', 'ref_master:%s' % master_name, 160 'tags': ['purpose:deflake', 'ref_master:%s' % master_name,
161 'ref_buildername:%s' % builder_name, 161 'ref_buildername:%s' % builder_name,
162 'ref_buildnumber:%s' % build_number, 162 'ref_buildnumber:%s' % build_number,
163 'ref_stepname:%s' % step_name, 163 'ref_stepname:%s' % step_name,
164 'ref_task_id:1'], 164 'ref_task_id:1',
165 'ref_name:a_tests'],
165 'user': '', 166 'user': '',
166 } 167 }
167 168
168 pipeline = TriggerSwarmingTaskPipeline() 169 pipeline = TriggerSwarmingTaskPipeline()
169 new_task_id = pipeline.run( 170 new_task_id = pipeline.run(
170 master_name, builder_name, build_number, step_name, tests) 171 master_name, builder_name, build_number, step_name, tests)
171 self.assertEqual('new_task_id', new_task_id) 172 self.assertEqual('new_task_id', new_task_id)
172 self.assertEqual(expected_new_request_json, new_request_json) 173 self.assertEqual(expected_new_request_json, new_request_json)
173 174
174 swarming_task = WfSwarmingTask.Get( 175 swarming_task = WfSwarmingTask.Get(
175 master_name, builder_name, build_number, step_name) 176 master_name, builder_name, build_number, step_name)
176 self.assertIsNotNone(swarming_task) 177 self.assertIsNotNone(swarming_task)
177 self.assertEqual('new_task_id', swarming_task.task_id) 178 self.assertEqual('new_task_id', swarming_task.task_id)
178 self.assertEqual(tests, swarming_task.parameters['tests']) 179 self.assertEqual(tests, swarming_task.parameters['tests'])
179 self.assertEqual(_MOCK_SWARMING_SETTINGS['iterations_to_rerun'], 180 self.assertEqual(_MOCK_SWARMING_SETTINGS['iterations_to_rerun'],
180 swarming_task.parameters['iterations_to_rerun']) 181 swarming_task.parameters['iterations_to_rerun'])
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698