| OLD | NEW |
| (Empty) |
| 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 | |
| 3 # found in the LICENSE file. | |
| 4 | |
| 5 import unittest | |
| 6 | |
| 7 import mock | |
| 8 | |
| 9 from infra_libs.ts_mon.common import http_metrics | |
| 10 from infra_libs.ts_mon.common import interface | |
| 11 from infra_libs.ts_mon.common import targets | |
| 12 | |
| 13 | |
| 14 class TestHttpMetrics(unittest.TestCase): | |
| 15 def setUp(self): | |
| 16 super(TestHttpMetrics, self).setUp() | |
| 17 target = targets.TaskTarget('test_service', 'test_job', | |
| 18 'test_region', 'test_host') | |
| 19 self.mock_state = interface.State(target=target) | |
| 20 self.state_patcher = mock.patch('infra_libs.ts_mon.common.interface.state', | |
| 21 new=self.mock_state) | |
| 22 self.state_patcher.start() | |
| 23 | |
| 24 def tearDown(self): | |
| 25 self.state_patcher.stop() | |
| 26 super(TestHttpMetrics, self).tearDown() | |
| 27 | |
| 28 def test_update_http_server_metrics(self): | |
| 29 http_metrics.update_http_server_metrics( | |
| 30 '/', 200, 125.4, | |
| 31 request_size=100, response_size=200, user_agent='Chrome') | |
| 32 fields = {'status': 200, 'name': '/', 'is_robot': False} | |
| 33 self.assertEqual(1, http_metrics.server_response_status.get(fields)) | |
| 34 self.assertEqual(125.4, http_metrics.server_durations.get(fields).sum) | |
| 35 self.assertEqual(100, http_metrics.server_request_bytes.get(fields).sum) | |
| 36 self.assertEqual(200, http_metrics.server_response_bytes.get(fields).sum) | |
| 37 | |
| 38 def test_update_http_server_metrics_no_sizes(self): | |
| 39 http_metrics.update_http_server_metrics('/', 200, 125.4) | |
| 40 fields = {'status': 200, 'name': '/', 'is_robot': False} | |
| 41 self.assertEqual(1, http_metrics.server_response_status.get(fields)) | |
| 42 self.assertEqual(125.4, http_metrics.server_durations.get(fields).sum) | |
| 43 self.assertIsNone(http_metrics.server_request_bytes.get(fields)) | |
| 44 self.assertIsNone(http_metrics.server_response_bytes.get(fields)) | |
| OLD | NEW |