| OLD | NEW |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 json | 5 import json |
| 6 | 6 |
| 7 from testing_utils import testing | 7 from testing_utils import testing |
| 8 | 8 |
| 9 from common import buildbucket_client | 9 from common import buildbucket_client |
| 10 | 10 |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 url = base_url + '/' + build_id | 77 url = base_url + '/' + build_id |
| 78 self.mocked_urlfetch.register_handler( | 78 self.mocked_urlfetch.register_handler( |
| 79 url, content, status_code=status_code, headers=headers) | 79 url, content, status_code=status_code, headers=headers) |
| 80 else: | 80 else: |
| 81 self.mocked_urlfetch.register_handler( | 81 self.mocked_urlfetch.register_handler( |
| 82 base_url, content, status_code=status_code, | 82 base_url, content, status_code=status_code, |
| 83 headers=headers, data=try_job_request) | 83 headers=headers, data=try_job_request) |
| 84 | 84 |
| 85 def testTriggerTryJobsSuccess(self): | 85 def testTriggerTryJobsSuccess(self): |
| 86 response = { | 86 response = { |
| 87 'build': { | 87 'build': { |
| 88 'id': '1', | 88 'id': '1', |
| 89 'url': 'url', | 89 'url': 'url', |
| 90 'status': 'SCHEDULED', | 90 'status': 'SCHEDULED', |
| 91 } | 91 } |
| 92 } | 92 } |
| 93 try_job = buildbucket_client.TryJob('m', 'b', 'r', {'a': 'b'}, []) | 93 try_job = buildbucket_client.TryJob('m', 'b', 'r', {'a': 'b'}, []) |
| 94 self._MockUrlFetch( | 94 self._MockUrlFetch( |
| 95 None, json.dumps(try_job.ToBuildbucketRequest()), json.dumps(response)) | 95 None, json.dumps(try_job.ToBuildbucketRequest()), json.dumps(response)) |
| 96 results = buildbucket_client.TriggerTryJobs([try_job]) | 96 results = buildbucket_client.TriggerTryJobs([try_job]) |
| 97 self.assertEqual(1, len(results)) | 97 self.assertEqual(1, len(results)) |
| 98 error, build = results[0] | 98 error, build = results[0] |
| 99 self.assertIsNone(error) | 99 self.assertIsNone(error) |
| 100 self.assertIsNotNone(build) | 100 self.assertIsNotNone(build) |
| 101 self.assertEqual('1', build.id) | 101 self.assertEqual('1', build.id) |
| 102 self.assertEqual('url', build.url) | 102 self.assertEqual('url', build.url) |
| 103 self.assertEqual('SCHEDULED', build.status) | 103 self.assertEqual('SCHEDULED', build.status) |
| 104 | 104 |
| 105 def testTriggerTryJobsFailure(self): | 105 def testTriggerTryJobsFailure(self): |
| 106 response = { | 106 response = { |
| 107 'error': { | 107 'error': { |
| 108 'reason': 'error', | 108 'reason': 'error', |
| 109 'message': 'message', | 109 'message': 'message', |
| 110 } | 110 } |
| 111 } | 111 } |
| 112 try_job = buildbucket_client.TryJob('m', 'b', 'r', {}, []) | 112 try_job = buildbucket_client.TryJob('m', 'b', 'r', {}, []) |
| 113 self._MockUrlFetch( | 113 self._MockUrlFetch( |
| 114 None, json.dumps(try_job.ToBuildbucketRequest()), json.dumps(response)) | 114 None, json.dumps(try_job.ToBuildbucketRequest()), json.dumps(response)) |
| 115 results = buildbucket_client.TriggerTryJobs([try_job]) | 115 results = buildbucket_client.TriggerTryJobs([try_job]) |
| 116 self.assertEqual(1, len(results)) | 116 self.assertEqual(1, len(results)) |
| 117 error, build = results[0] | 117 error, build = results[0] |
| 118 self.assertIsNotNone(error) | 118 self.assertIsNotNone(error) |
| 119 self.assertEqual('error', error.reason) | 119 self.assertEqual('error', error.reason) |
| 120 self.assertEqual('message', error.message) | 120 self.assertEqual('message', error.message) |
| (...skipping 28 matching lines...) Expand all Loading... |
| 149 '1', None, json.dumps(response)) | 149 '1', None, json.dumps(response)) |
| 150 results = buildbucket_client.GetTryJobs(['1']) | 150 results = buildbucket_client.GetTryJobs(['1']) |
| 151 self.assertEqual(1, len(results)) | 151 self.assertEqual(1, len(results)) |
| 152 error, build = results[0] | 152 error, build = results[0] |
| 153 self.assertIsNone(error) | 153 self.assertIsNone(error) |
| 154 self.assertIsNotNone(build) | 154 self.assertIsNotNone(build) |
| 155 self.assertEqual('1', build.id) | 155 self.assertEqual('1', build.id) |
| 156 self.assertEqual('url', build.url) | 156 self.assertEqual('url', build.url) |
| 157 self.assertEqual('STARTED', build.status) | 157 self.assertEqual('STARTED', build.status) |
| 158 | 158 |
| 159 expected_result = [ | 159 expected_report = [ |
| 160 ['rev1', 'passed'], | 160 ['rev1', 'passed'], |
| 161 ['rev2', 'failed'] | 161 ['rev2', 'failed'] |
| 162 ] | 162 ] |
| 163 self.assertEqual(expected_result, build.result) | 163 self.assertEqual(expected_report, build.report) |
| 164 | 164 |
| 165 def testGetTryJobsFailure(self): | 165 def testGetTryJobsFailure(self): |
| 166 response = { | 166 response = { |
| 167 'error': { | 167 'error': { |
| 168 'reason': 'BUILD_NOT_FOUND', | 168 'reason': 'BUILD_NOT_FOUND', |
| 169 'message': 'message', | 169 'message': 'message', |
| 170 } | 170 } |
| 171 } | 171 } |
| 172 self._MockUrlFetch( | 172 self._MockUrlFetch( |
| 173 '2', None, json.dumps(response)) | 173 '2', None, json.dumps(response)) |
| 174 results = buildbucket_client.GetTryJobs(['2']) | 174 results = buildbucket_client.GetTryJobs(['2']) |
| 175 self.assertEqual(1, len(results)) | 175 self.assertEqual(1, len(results)) |
| 176 error, build = results[0] | 176 error, build = results[0] |
| 177 self.assertIsNotNone(error) | 177 self.assertIsNotNone(error) |
| 178 self.assertEqual('BUILD_NOT_FOUND', error.reason) | 178 self.assertEqual('BUILD_NOT_FOUND', error.reason) |
| 179 self.assertEqual('message', error.message) | 179 self.assertEqual('message', error.message) |
| 180 self.assertIsNone(build) | 180 self.assertIsNone(build) |
| 181 | 181 |
| 182 def testGetTryJobsRequestFailure(self): | 182 def testGetTryJobsRequestFailure(self): |
| 183 response = 'Not Found' | 183 response = 'Not Found' |
| 184 self._MockUrlFetch( | 184 self._MockUrlFetch( |
| 185 '3', None, response, 404) | 185 '3', None, response, 404) |
| 186 results = buildbucket_client.GetTryJobs(['3']) | 186 results = buildbucket_client.GetTryJobs(['3']) |
| 187 self.assertEqual(1, len(results)) | 187 self.assertEqual(1, len(results)) |
| 188 error, build = results[0] | 188 error, build = results[0] |
| 189 self.assertIsNotNone(error) | 189 self.assertIsNotNone(error) |
| 190 self.assertEqual(404, error.reason) | 190 self.assertEqual(404, error.reason) |
| 191 self.assertEqual('Not Found', error.message) | 191 self.assertEqual('Not Found', error.message) |
| 192 self.assertIsNone(build) | 192 self.assertIsNone(build) |
| OLD | NEW |