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

Side by Side Diff: infra_libs/ts_mon/common/test/http_metrics_test.py

Issue 2213143002: Add infra_libs as a bootstrap dependency. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Removed the ugly import hack Created 4 years, 4 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
(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))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698