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 #include "net/http/http_log_util.h" | 5 #include "net/http/http_log_util.h" |
6 #include "testing/gtest/include/gtest/gtest.h" | 6 #include "testing/gtest/include/gtest/gtest.h" |
7 | 7 |
8 namespace net { | 8 namespace net { |
9 | 9 |
10 TEST(HttpLogUtilTest, ElideHeaderValueForNetLog) { | 10 TEST(HttpLogUtilTest, ElideHeaderValueForNetLog) { |
11 // Only elide for appropriate log level. | 11 // Only elide for appropriate log level. |
12 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 12 EXPECT_EQ("[10 bytes were stripped]", |
13 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Cookie", "name=value")); | 13 ElideHeaderValueForNetLog( |
14 EXPECT_EQ("name=value", ElideHeaderValueForNetLog( | 14 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Cookie", "name=value")); |
15 net::NetLog::LOG_ALL_BUT_BYTES, "Cookie", "name=value")); | 15 EXPECT_EQ("name=value", |
| 16 ElideHeaderValueForNetLog( |
| 17 net::NetLog::LOG_ALL_BUT_BYTES, "Cookie", "name=value")); |
16 | 18 |
17 // Headers are compared case insensitively. | 19 // Headers are compared case insensitively. |
18 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 20 EXPECT_EQ("[10 bytes were stripped]", |
19 net::NetLog::LOG_STRIP_PRIVATE_DATA, "cOoKiE", "name=value")); | 21 ElideHeaderValueForNetLog( |
| 22 net::NetLog::LOG_STRIP_PRIVATE_DATA, "cOoKiE", "name=value")); |
20 | 23 |
21 // These headers should be completely elided. | 24 // These headers should be completely elided. |
22 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 25 EXPECT_EQ( |
23 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie", "name=value")); | 26 "[10 bytes were stripped]", |
24 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 27 ElideHeaderValueForNetLog( |
25 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie2", "name=value")); | 28 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie", "name=value")); |
26 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 29 EXPECT_EQ( |
27 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Authorization", "Basic 1234")); | 30 "[10 bytes were stripped]", |
| 31 ElideHeaderValueForNetLog( |
| 32 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie2", "name=value")); |
| 33 EXPECT_EQ( |
| 34 "[10 bytes were stripped]", |
| 35 ElideHeaderValueForNetLog( |
| 36 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Authorization", "Basic 1234")); |
28 #if !defined(SPDY_PROXY_AUTH_ORIGIN) | 37 #if !defined(SPDY_PROXY_AUTH_ORIGIN) |
29 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 38 EXPECT_EQ("[10 bytes were stripped]", |
30 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 39 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
31 "Proxy-Authorization", "Basic 1234")); | 40 "Proxy-Authorization", |
| 41 "Basic 1234")); |
32 #endif | 42 #endif |
33 | 43 |
34 // Unknown headers should pass through. | 44 // Unknown headers should pass through. |
35 EXPECT_EQ("value", ElideHeaderValueForNetLog( | 45 EXPECT_EQ("value", |
36 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Boring", "value")); | 46 ElideHeaderValueForNetLog( |
| 47 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Boring", "value")); |
37 | 48 |
38 // Basic and Digest auth challenges are public. | 49 // Basic and Digest auth challenges are public. |
39 EXPECT_EQ("Basic realm=test", ElideHeaderValueForNetLog( | 50 EXPECT_EQ("Basic realm=test", |
40 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 51 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
41 "WWW-Authenticate", "Basic realm=test")); | 52 "WWW-Authenticate", |
42 EXPECT_EQ("Digest realm=test", ElideHeaderValueForNetLog( | 53 "Basic realm=test")); |
43 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 54 EXPECT_EQ("Digest realm=test", |
44 "WWW-Authenticate", "Digest realm=test")); | 55 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
| 56 "WWW-Authenticate", |
| 57 "Digest realm=test")); |
45 #if !defined(SPDY_PROXY_AUTH_ORIGIN) | 58 #if !defined(SPDY_PROXY_AUTH_ORIGIN) |
46 EXPECT_EQ("Basic realm=test", ElideHeaderValueForNetLog( | 59 EXPECT_EQ("Basic realm=test", |
47 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 60 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
48 "Proxy-Authenticate", "Basic realm=test")); | 61 "Proxy-Authenticate", |
49 EXPECT_EQ("Digest realm=test", ElideHeaderValueForNetLog( | 62 "Basic realm=test")); |
50 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 63 EXPECT_EQ("Digest realm=test", |
51 "Proxy-Authenticate", "Digest realm=test")); | 64 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
| 65 "Proxy-Authenticate", |
| 66 "Digest realm=test")); |
52 #endif | 67 #endif |
53 | 68 |
54 // Multi-round mechanisms partially elided. | 69 // Multi-round mechanisms partially elided. |
55 EXPECT_EQ("NTLM [4 bytes were stripped]", ElideHeaderValueForNetLog( | 70 EXPECT_EQ("NTLM [4 bytes were stripped]", |
56 net::NetLog::LOG_STRIP_PRIVATE_DATA, "WWW-Authenticate", "NTLM 1234")); | 71 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
| 72 "WWW-Authenticate", |
| 73 "NTLM 1234")); |
57 #if !defined(SPDY_PROXY_AUTH_ORIGIN) | 74 #if !defined(SPDY_PROXY_AUTH_ORIGIN) |
58 EXPECT_EQ("NTLM [4 bytes were stripped]", ElideHeaderValueForNetLog( | 75 EXPECT_EQ("NTLM [4 bytes were stripped]", |
59 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Proxy-Authenticate", "NTLM 1234")); | 76 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
| 77 "Proxy-Authenticate", |
| 78 "NTLM 1234")); |
60 #endif | 79 #endif |
61 | 80 |
62 // Leave whitespace intact. | 81 // Leave whitespace intact. |
63 EXPECT_EQ("NTLM [4 bytes were stripped] ", ElideHeaderValueForNetLog( | 82 EXPECT_EQ("NTLM [4 bytes were stripped] ", |
64 net::NetLog::LOG_STRIP_PRIVATE_DATA, "WWW-Authenticate", "NTLM 1234 ")); | 83 ElideHeaderValueForNetLog(net::NetLog::LOG_STRIP_PRIVATE_DATA, |
| 84 "WWW-Authenticate", |
| 85 "NTLM 1234 ")); |
65 | 86 |
66 // Extra elisions for SPDY_PROXY_AUTH_ORIGIN. | 87 // Extra elisions for SPDY_PROXY_AUTH_ORIGIN. |
67 #if defined(SPDY_PROXY_AUTH_ORIGIN) | 88 #if defined(SPDY_PROXY_AUTH_ORIGIN) |
68 EXPECT_EQ("[elided]", ElideHeaderValueForNetLog( | 89 EXPECT_EQ("[elided]", |
69 net::NetLog::LOG_ALL_BUT_BYTES, | 90 ElideHeaderValueForNetLog(net::NetLog::LOG_ALL_BUT_BYTES, |
70 "Proxy-Authenticate", "Basic realm=test")); | 91 "Proxy-Authenticate", |
71 EXPECT_EQ("[elided]", ElideHeaderValueForNetLog( | 92 "Basic realm=test")); |
72 net::NetLog::LOG_ALL_BUT_BYTES, "Proxy-Authorization", "Basic 1234")); | 93 EXPECT_EQ( |
| 94 "[elided]", |
| 95 ElideHeaderValueForNetLog( |
| 96 net::NetLog::LOG_ALL_BUT_BYTES, "Proxy-Authorization", "Basic 1234")); |
73 #endif | 97 #endif |
74 } | 98 } |
75 | 99 |
76 } // namspace net | 100 } // namspace net |
OLD | NEW |