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]", ElideHeaderValueForNetLog( |
13 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Cookie", "name=value")); | 13 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Cookie", "name=value")); |
14 EXPECT_EQ("name=value", ElideHeaderValueForNetLog( | 14 EXPECT_EQ("name=value", ElideHeaderValueForNetLog( |
15 net::NetLog::LOG_ALL_BUT_BYTES, "Cookie", "name=value")); | 15 net::NetLog::LOG_ALL_BUT_BYTES, "Cookie", "name=value")); |
16 | 16 |
17 // Headers are compared case insensitively. | 17 // Headers are compared case insensitively. |
18 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 18 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( |
19 net::NetLog::LOG_STRIP_PRIVATE_DATA, "cOoKiE", "name=value")); | 19 net::NetLog::LOG_STRIP_PRIVATE_DATA, "cOoKiE", "name=value")); |
20 | 20 |
21 // These headers should be completely elided. | 21 // These headers should be completely elided. |
22 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 22 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( |
23 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie", "name=value")); | 23 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie", "name=value")); |
24 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 24 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( |
25 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie2", "name=value")); | 25 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Set-Cookie2", "name=value")); |
26 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 26 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( |
27 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Authorization", "Basic 1234")); | 27 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Authorization", "Basic 1234")); |
| 28 #if !defined(SPDY_PROXY_AUTH_ORIGIN) |
28 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( | 29 EXPECT_EQ("[10 bytes were stripped]", ElideHeaderValueForNetLog( |
29 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 30 net::NetLog::LOG_STRIP_PRIVATE_DATA, |
30 "Proxy-Authorization", "Basic 1234")); | 31 "Proxy-Authorization", "Basic 1234")); |
| 32 #endif |
31 | 33 |
32 // Unknown headers should pass through. | 34 // Unknown headers should pass through. |
33 EXPECT_EQ("value", ElideHeaderValueForNetLog( | 35 EXPECT_EQ("value", ElideHeaderValueForNetLog( |
34 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Boring", "value")); | 36 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Boring", "value")); |
35 | 37 |
36 // Basic and Digest auth challenges are public. | 38 // Basic and Digest auth challenges are public. |
37 EXPECT_EQ("Basic realm=test", ElideHeaderValueForNetLog( | 39 EXPECT_EQ("Basic realm=test", ElideHeaderValueForNetLog( |
38 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 40 net::NetLog::LOG_STRIP_PRIVATE_DATA, |
39 "WWW-Authenticate", "Basic realm=test")); | 41 "WWW-Authenticate", "Basic realm=test")); |
40 EXPECT_EQ("Digest realm=test", ElideHeaderValueForNetLog( | 42 EXPECT_EQ("Digest realm=test", ElideHeaderValueForNetLog( |
41 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 43 net::NetLog::LOG_STRIP_PRIVATE_DATA, |
42 "WWW-Authenticate", "Digest realm=test")); | 44 "WWW-Authenticate", "Digest realm=test")); |
| 45 #if !defined(SPDY_PROXY_AUTH_ORIGIN) |
43 EXPECT_EQ("Basic realm=test", ElideHeaderValueForNetLog( | 46 EXPECT_EQ("Basic realm=test", ElideHeaderValueForNetLog( |
44 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 47 net::NetLog::LOG_STRIP_PRIVATE_DATA, |
45 "Proxy-Authenticate", "Basic realm=test")); | 48 "Proxy-Authenticate", "Basic realm=test")); |
46 EXPECT_EQ("Digest realm=test", ElideHeaderValueForNetLog( | 49 EXPECT_EQ("Digest realm=test", ElideHeaderValueForNetLog( |
47 net::NetLog::LOG_STRIP_PRIVATE_DATA, | 50 net::NetLog::LOG_STRIP_PRIVATE_DATA, |
48 "Proxy-Authenticate", "Digest realm=test")); | 51 "Proxy-Authenticate", "Digest realm=test")); |
| 52 #endif |
49 | 53 |
50 // Multi-round mechanisms partially elided. | 54 // Multi-round mechanisms partially elided. |
51 EXPECT_EQ("NTLM [4 bytes were stripped]", ElideHeaderValueForNetLog( | 55 EXPECT_EQ("NTLM [4 bytes were stripped]", ElideHeaderValueForNetLog( |
52 net::NetLog::LOG_STRIP_PRIVATE_DATA, "WWW-Authenticate", "NTLM 1234")); | 56 net::NetLog::LOG_STRIP_PRIVATE_DATA, "WWW-Authenticate", "NTLM 1234")); |
| 57 #if !defined(SPDY_PROXY_AUTH_ORIGIN) |
53 EXPECT_EQ("NTLM [4 bytes were stripped]", ElideHeaderValueForNetLog( | 58 EXPECT_EQ("NTLM [4 bytes were stripped]", ElideHeaderValueForNetLog( |
54 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Proxy-Authenticate", "NTLM 1234")); | 59 net::NetLog::LOG_STRIP_PRIVATE_DATA, "Proxy-Authenticate", "NTLM 1234")); |
| 60 #endif |
55 | 61 |
56 // Leave whitespace intact. | 62 // Leave whitespace intact. |
57 EXPECT_EQ("NTLM [4 bytes were stripped] ", ElideHeaderValueForNetLog( | 63 EXPECT_EQ("NTLM [4 bytes were stripped] ", ElideHeaderValueForNetLog( |
58 net::NetLog::LOG_STRIP_PRIVATE_DATA, "WWW-Authenticate", "NTLM 1234 ")); | 64 net::NetLog::LOG_STRIP_PRIVATE_DATA, "WWW-Authenticate", "NTLM 1234 ")); |
59 | 65 |
| 66 // Extra elisions for SPDY_PROXY_AUTH_ORIGIN. |
60 #if defined(SPDY_PROXY_AUTH_ORIGIN) | 67 #if defined(SPDY_PROXY_AUTH_ORIGIN) |
61 EXPECT_EQ("[elided]", ElideHeaderValueForNetLog( | 68 EXPECT_EQ("[elided]", ElideHeaderValueForNetLog( |
62 net::NetLog::LOG_ALL_BUT_BYTES, "Proxy-Authorization", "Basic 1234")); | 69 net::NetLog::LOG_ALL_BUT_BYTES, |
63 #else | 70 "Proxy-Authenticate", "Basic realm=test")); |
64 EXPECT_EQ("Basic 1234", ElideHeaderValueForNetLog( | 71 EXPECT_EQ("[elided]", ElideHeaderValueForNetLog( |
65 net::NetLog::LOG_ALL_BUT_BYTES, "Proxy-Authorization", "Basic 1234")); | 72 net::NetLog::LOG_ALL_BUT_BYTES, "Proxy-Authorization", "Basic 1234")); |
66 #endif | 73 #endif |
67 } | 74 } |
68 | 75 |
69 } // namspace net | 76 } // namspace net |
OLD | NEW |