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

Side by Side Diff: net/base/load_log_util_unittest.cc

Issue 363025: Improve the display of LoadLogs when truncation occurs.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Change -1 to be a constant instead Created 11 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « net/base/load_log_util.cc ('k') | net/http/http_cache_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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 #include "net/base/load_log_unittest.h" 5 #include "net/base/load_log_unittest.h"
6 #include "net/base/load_log_util.h" 6 #include "net/base/load_log_util.h"
7 #include "testing/gtest/include/gtest/gtest.h" 7 #include "testing/gtest/include/gtest/gtest.h"
8 8
9 namespace net { 9 namespace net {
10 namespace { 10 namespace {
11 11
12 TEST(LoadLogUtilTest, Basic) { 12 TEST(LoadLogUtilTest, Basic) {
13 scoped_refptr<LoadLog> log(new LoadLog); 13 scoped_refptr<LoadLog> log(new LoadLog(10));
14 14
15 log->Add(MakeTime(1), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_BEGIN); 15 log->Add(MakeTime(1), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_BEGIN);
16 log->Add(MakeTime(5), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART, 16 log->Add(MakeTime(5), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART,
17 LoadLog::PHASE_BEGIN); 17 LoadLog::PHASE_BEGIN);
18 log->Add(MakeTime(8), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART, 18 log->Add(MakeTime(8), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART,
19 LoadLog::PHASE_END); 19 LoadLog::PHASE_END);
20 log->Add(MakeTime(12), LoadLog::TYPE_CANCELLED, LoadLog::PHASE_NONE); 20 log->Add(MakeTime(12), LoadLog::TYPE_CANCELLED, LoadLog::PHASE_NONE);
21 log->Add(MakeTime(131), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_END); 21 log->Add(MakeTime(131), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_END);
22 22
23 EXPECT_EQ( 23 EXPECT_EQ(
24 "t= 1: +HOST_RESOLVER_IMPL [dt=130]\n" 24 "t= 1: +HOST_RESOLVER_IMPL [dt=130]\n"
25 "t= 5: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt= 3]\n" 25 "t= 5: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt= 3]\n"
26 "t= 8: -HOST_RESOLVER_IMPL_OBSERVER_ONSTART\n" 26 "t= 8: -HOST_RESOLVER_IMPL_OBSERVER_ONSTART\n"
27 "t= 12: CANCELLED\n" 27 "t= 12: CANCELLED\n"
28 "t=131: -HOST_RESOLVER_IMPL", 28 "t=131: -HOST_RESOLVER_IMPL",
29 LoadLogUtil::PrettyPrintAsEventTree(log)); 29 LoadLogUtil::PrettyPrintAsEventTree(log));
30 } 30 }
31 31
32 TEST(LoadLogUtilTest, UnmatchedOpen) { 32 TEST(LoadLogUtilTest, UnmatchedOpen) {
33 scoped_refptr<LoadLog> log(new LoadLog); 33 scoped_refptr<LoadLog> log(new LoadLog(10));
34 34
35 log->Add(MakeTime(3), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_BEGIN); 35 log->Add(MakeTime(3), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_BEGIN);
36 // Note that there is no matching call to PHASE_END for all of the following. 36 // Note that there is no matching call to PHASE_END for all of the following.
37 log->Add(MakeTime(6), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART, 37 log->Add(MakeTime(6), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART,
38 LoadLog::PHASE_BEGIN); 38 LoadLog::PHASE_BEGIN);
39 log->Add(MakeTime(7), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART, 39 log->Add(MakeTime(7), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART,
40 LoadLog::PHASE_BEGIN); 40 LoadLog::PHASE_BEGIN);
41 log->Add(MakeTime(8), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART, 41 log->Add(MakeTime(8), LoadLog::TYPE_HOST_RESOLVER_IMPL_OBSERVER_ONSTART,
42 LoadLog::PHASE_BEGIN); 42 LoadLog::PHASE_BEGIN);
43 log->Add(MakeTime(10), LoadLog::TYPE_CANCELLED, LoadLog::PHASE_NONE); 43 log->Add(MakeTime(10), LoadLog::TYPE_CANCELLED, LoadLog::PHASE_NONE);
44 log->Add(MakeTime(16), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_END); 44 log->Add(MakeTime(16), LoadLog::TYPE_HOST_RESOLVER_IMPL, LoadLog::PHASE_END);
45 45
46 EXPECT_EQ( 46 EXPECT_EQ(
47 "t= 3: +HOST_RESOLVER_IMPL [dt=13]\n" 47 "t= 3: +HOST_RESOLVER_IMPL [dt=13]\n"
48 "t= 6: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt=10]\n" 48 "t= 6: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt=10]\n"
49 "t= 7: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt= 9]\n" 49 "t= 7: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt= 9]\n"
50 "t= 8: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt= 8]\n" 50 "t= 8: +HOST_RESOLVER_IMPL_OBSERVER_ONSTART [dt= 8]\n"
51 "t=10: CANCELLED\n" 51 "t=10: CANCELLED\n"
52 "t=16: -HOST_RESOLVER_IMPL", 52 "t=16: -HOST_RESOLVER_IMPL",
53 LoadLogUtil::PrettyPrintAsEventTree(log)); 53 LoadLogUtil::PrettyPrintAsEventTree(log));
54 } 54 }
55 55
56 TEST(LoadLogUtilTest, DisplayOfTruncated) {
57 size_t kMaxNumEntries = 5;
58 scoped_refptr<LoadLog> log(new LoadLog(kMaxNumEntries));
59
60 // Add a total of 10 events. This means that 5 will be truncated.
61 log->Add(MakeTime(0), LoadLog::TYPE_TCP_CONNECT, LoadLog::PHASE_BEGIN);
62 for (size_t i = 1; i < 8; ++i) {
63 log->Add(MakeTime(i), LoadLog::TYPE_CANCELLED, LoadLog::PHASE_NONE);
64 }
65 log->Add(MakeTime(9), LoadLog::TYPE_TCP_CONNECT, LoadLog::PHASE_END);
66
67 EXPECT_EQ(
68 "t=0: +TCP_CONNECT [dt=9]\n"
69 "t=1: CANCELLED\n"
70 "t=2: CANCELLED\n"
71 "t=3: CANCELLED\n"
72 " ... Truncated 4 entries ...\n"
73 "t=9: -TCP_CONNECT",
74 LoadLogUtil::PrettyPrintAsEventTree(log));
75 }
76
56 } // namespace 77 } // namespace
57 } // namespace net 78 } // namespace net
OLDNEW
« no previous file with comments | « net/base/load_log_util.cc ('k') | net/http/http_cache_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698