| 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 from datetime import datetime, timedelta | 5 from datetime import datetime, timedelta |
| 6 import os | 6 import os |
| 7 import sys | |
| 8 | |
| 9 # App Engine source file imports must be relative to their app's root. | |
| 10 sys.path.append(os.path.dirname(os.path.dirname(__file__))) | |
| 11 | 7 |
| 12 from appengine.utils import testing | 8 from appengine.utils import testing |
| 13 from appengine.chromium_cq_status import main | 9 |
| 14 from appengine.chromium_cq_status.cron import cq_stats | 10 from appengine.path_mangler_hack import PathMangler |
| 15 from appengine.chromium_cq_status.model.cq_stats import CQStats, NumberListStats | 11 with PathMangler(os.path.dirname(os.path.dirname(__file__))): |
| 16 from appengine.chromium_cq_status.model.record import Record | 12 from appengine.chromium_cq_status import main |
| 13 from appengine.chromium_cq_status.cron import cq_stats |
| 14 from appengine.chromium_cq_status.model.cq_stats import ( |
| 15 CQStats, NumberListStats) |
| 16 from appengine.chromium_cq_status.model.record import Record |
| 17 | 17 |
| 18 class TestStats(testing.AppengineTestCase): | 18 class TestStats(testing.AppengineTestCase): |
| 19 app_module = main.app | 19 app_module = main.app |
| 20 | 20 |
| 21 def setUp(self): | 21 def setUp(self): |
| 22 super(TestStats, self).setUp() | 22 super(TestStats, self).setUp() |
| 23 self.mock_current_user(is_admin=True) | 23 self.mock_current_user(is_admin=True) |
| 24 for record in Record.query(): | 24 for record in Record.query(): |
| 25 record.key.delete() # pragma: no cover | 25 record.key.delete() # pragma: no cover |
| 26 assert Record.query().count() == 0 | 26 assert Record.query().count() == 0 |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 164 self.assertEquals(len(expected_stats), len(actual_stats)) | 164 self.assertEquals(len(expected_stats), len(actual_stats)) |
| 165 oldMaxDiff = self.maxDiff | 165 oldMaxDiff = self.maxDiff |
| 166 self.maxDiff = None | 166 self.maxDiff = None |
| 167 for i in range(len(expected_stats)): | 167 for i in range(len(expected_stats)): |
| 168 expected = expected_stats[i] | 168 expected = expected_stats[i] |
| 169 actual = actual_stats[i] | 169 actual = actual_stats[i] |
| 170 actual.key = None | 170 actual.key = None |
| 171 self.assertEquals(expected, actual) | 171 self.assertEquals(expected, actual) |
| 172 self.maxDiff = oldMaxDiff | 172 self.maxDiff = oldMaxDiff |
| 173 | 173 |
| OLD | NEW |