| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 contextlib | 5 import contextlib |
| 6 import datetime | 6 import datetime |
| 7 | 7 |
| 8 from components import auth | 8 from components import auth |
| 9 from components import utils | 9 from components import utils |
| 10 from google.appengine.ext import ndb | 10 from google.appengine.ext import ndb |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 | 102 |
| 103 def test_add_with_auth_error(self): | 103 def test_add_with_auth_error(self): |
| 104 self.mock_cannot(acl.Action.ADD_BUILD) | 104 self.mock_cannot(acl.Action.ADD_BUILD) |
| 105 with self.assertRaises(auth.AuthorizationError): | 105 with self.assertRaises(auth.AuthorizationError): |
| 106 service.add(self.test_build.bucket) | 106 service.add(self.test_build.bucket) |
| 107 | 107 |
| 108 def test_add_with_bad_parameters(self): | 108 def test_add_with_bad_parameters(self): |
| 109 with self.assertRaises(errors.InvalidInputError): | 109 with self.assertRaises(errors.InvalidInputError): |
| 110 service.add('bucket', parameters=[]) | 110 service.add('bucket', parameters=[]) |
| 111 | 111 |
| 112 ################################### RETRY #################################### |
| 113 |
| 114 def test_retry(self): |
| 115 self.test_build.put() |
| 116 build = service.retry(self.test_build.key.id()) |
| 117 self.assertIsNotNone(build) |
| 118 self.assertIsNotNone(build.key) |
| 119 self.assertNotEqual(build.key.id(), self.test_build.key.id()) |
| 120 self.assertEqual(build.bucket, self.test_build.bucket) |
| 121 self.assertEqual(build.parameters, self.test_build.parameters) |
| 122 self.assertIn('retry_of:%s' % self.test_build.key.id(), build.tags) |
| 123 |
| 124 def test_retry_not_found(self): |
| 125 with self.assertRaises(errors.BuildNotFoundError): |
| 126 service.retry(2) |
| 127 |
| 112 #################################### GET ##################################### | 128 #################################### GET ##################################### |
| 113 | 129 |
| 114 def test_get(self): | 130 def test_get(self): |
| 115 self.test_build.put() | 131 self.test_build.put() |
| 116 build = service.get(self.test_build.key.id()) | 132 build = service.get(self.test_build.key.id()) |
| 117 self.assertEqual(build, self.test_build) | 133 self.assertEqual(build, self.test_build) |
| 118 | 134 |
| 119 def test_get_nonexistent_build(self): | 135 def test_get_nonexistent_build(self): |
| 120 self.assertIsNone(service.get(42)) | 136 self.assertIsNone(service.get(42)) |
| 121 | 137 |
| (...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 768 self.test_build.bucket, model.BuildStatus.SCHEDULED) | 784 self.test_build.bucket, model.BuildStatus.SCHEDULED) |
| 769 | 785 |
| 770 def test_delete_many_builds_schedule_task(self): | 786 def test_delete_many_builds_schedule_task(self): |
| 771 service.delete_many_builds( | 787 service.delete_many_builds( |
| 772 self.test_build.bucket, model.BuildStatus.SCHEDULED) | 788 self.test_build.bucket, model.BuildStatus.SCHEDULED) |
| 773 | 789 |
| 774 def test_delete_many_completed_builds(self): | 790 def test_delete_many_completed_builds(self): |
| 775 with self.assertRaises(errors.InvalidInputError): | 791 with self.assertRaises(errors.InvalidInputError): |
| 776 service.delete_many_builds( | 792 service.delete_many_builds( |
| 777 self.test_build.bucket, model.BuildStatus.COMPLETED) | 793 self.test_build.bucket, model.BuildStatus.COMPLETED) |
| OLD | NEW |