| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "googleurl/src/gurl.h" | 5 #include "googleurl/src/gurl.h" |
| 6 #include "net/base/registry_controlled_domains/registry_controlled_domain.h" | 6 #include "net/base/registry_controlled_domains/registry_controlled_domain.h" |
| 7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "testing/gtest/include/gtest/gtest.h" |
| 8 | 8 |
| 9 #include "effective_tld_names_unittest1.cc" | 9 #include "effective_tld_names_unittest1.cc" |
| 10 #undef TOTAL_KEYWORDS | 10 #undef TOTAL_KEYWORDS |
| 11 #undef MIN_WORD_LENGTH | 11 #undef MIN_WORD_LENGTH |
| 12 #undef MAX_WORD_LENGTH | 12 #undef MAX_WORD_LENGTH |
| 13 #undef MIN_HASH_VALUE | 13 #undef MIN_HASH_VALUE |
| 14 #undef MAX_HASH_VALUE | 14 #undef MAX_HASH_VALUE |
| 15 #include "effective_tld_names_unittest2.cc" | 15 #include "effective_tld_names_unittest2.cc" |
| 16 | 16 |
| 17 namespace net { | 17 namespace net { |
| 18 namespace registry_controlled_domains { |
| 18 namespace { | 19 namespace { |
| 19 | 20 |
| 20 std::string GetDomainFromURL(const std::string& url) { | 21 std::string GetDomainFromURL(const std::string& url) { |
| 21 return RegistryControlledDomainService::GetDomainAndRegistry(GURL(url)); | 22 return GetDomainAndRegistry(GURL(url), EXCLUDE_PRIVATE_REGISTRIES); |
| 22 } | 23 } |
| 23 | 24 |
| 24 std::string GetDomainFromHost(const std::string& host) { | 25 std::string GetDomainFromHost(const std::string& host) { |
| 25 return RegistryControlledDomainService::GetDomainAndRegistry(host); | 26 return GetDomainAndRegistry(host, EXCLUDE_PRIVATE_REGISTRIES); |
| 26 } | 27 } |
| 27 | 28 |
| 28 size_t GetRegistryLengthFromURL(const std::string& url, | 29 size_t GetRegistryLengthFromURL( |
| 29 bool allow_unknown_registries) { | 30 const std::string& url, |
| 30 return RegistryControlledDomainService::GetRegistryLength(GURL(url), | 31 UnknownRegistryFilter unknown_filter) { |
| 31 allow_unknown_registries); | 32 return GetRegistryLength( |
| 33 GURL(url), |
| 34 unknown_filter, |
| 35 EXCLUDE_PRIVATE_REGISTRIES); |
| 32 } | 36 } |
| 33 | 37 |
| 34 size_t GetRegistryLengthFromHost(const std::string& host, | 38 size_t GetRegistryLengthFromURLIncludingPrivate( |
| 35 bool allow_unknown_registries) { | 39 const std::string& url, |
| 36 return RegistryControlledDomainService::GetRegistryLength(host, | 40 UnknownRegistryFilter unknown_filter) { |
| 37 allow_unknown_registries); | 41 return GetRegistryLength( |
| 42 GURL(url), |
| 43 unknown_filter, |
| 44 INCLUDE_PRIVATE_REGISTRIES); |
| 45 } |
| 46 |
| 47 size_t GetRegistryLengthFromHost( |
| 48 const std::string& host, |
| 49 UnknownRegistryFilter unknown_filter) { |
| 50 return GetRegistryLength(host, unknown_filter, EXCLUDE_PRIVATE_REGISTRIES); |
| 38 } | 51 } |
| 39 | 52 |
| 40 bool CompareDomains(const std::string& url1, const std::string& url2) { | 53 bool CompareDomains(const std::string& url1, const std::string& url2) { |
| 41 GURL g1 = GURL(url1); | 54 GURL g1 = GURL(url1); |
| 42 GURL g2 = GURL(url2); | 55 GURL g2 = GURL(url2); |
| 43 return RegistryControlledDomainService::SameDomainOrHost(g1, g2); | 56 return SameDomainOrHost(g1, g2, EXCLUDE_PRIVATE_REGISTRIES); |
| 44 } | 57 } |
| 45 | 58 |
| 46 } // namespace | 59 } // namespace |
| 47 | 60 |
| 48 class RegistryControlledDomainTest : public testing::Test { | 61 class RegistryControlledDomainTest : public testing::Test { |
| 49 protected: | 62 protected: |
| 50 typedef RegistryControlledDomainService::FindDomainPtr FindDomainPtr; | |
| 51 void UseDomainData(FindDomainPtr function) { | 63 void UseDomainData(FindDomainPtr function) { |
| 52 RegistryControlledDomainService::UseFindDomainFunction(function); | 64 SetFindDomainFunctionForTesting(function); |
| 53 } | 65 } |
| 54 | 66 |
| 55 virtual void TearDown() { | 67 virtual void TearDown() { |
| 56 RegistryControlledDomainService::UseFindDomainFunction(NULL); | 68 SetFindDomainFunctionForTesting(NULL); |
| 57 } | 69 } |
| 58 }; | 70 }; |
| 59 | 71 |
| 60 TEST_F(RegistryControlledDomainTest, TestGetDomainAndRegistry) { | 72 TEST_F(RegistryControlledDomainTest, TestGetDomainAndRegistry) { |
| 61 UseDomainData(Perfect_Hash_Test1::FindDomain); | 73 UseDomainData(Perfect_Hash_Test1::FindDomain); |
| 62 | 74 |
| 63 // Test GURL version of GetDomainAndRegistry(). | 75 // Test GURL version of GetDomainAndRegistry(). |
| 64 EXPECT_EQ("baz.jp", GetDomainFromURL("http://a.baz.jp/file.html")); // 1 | 76 EXPECT_EQ("baz.jp", GetDomainFromURL("http://a.baz.jp/file.html")); // 1 |
| 65 EXPECT_EQ("baz.jp.", GetDomainFromURL("http://a.baz.jp./file.html")); // 1 | 77 EXPECT_EQ("baz.jp.", GetDomainFromURL("http://a.baz.jp./file.html")); // 1 |
| 66 EXPECT_EQ("", GetDomainFromURL("http://ac.jp")); // 2 | 78 EXPECT_EQ("", GetDomainFromURL("http://ac.jp")); // 2 |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 EXPECT_EQ("", GetDomainFromHost("...")); | 125 EXPECT_EQ("", GetDomainFromHost("...")); |
| 114 EXPECT_EQ("", GetDomainFromHost("192.168.0.1")); | 126 EXPECT_EQ("", GetDomainFromHost("192.168.0.1")); |
| 115 EXPECT_EQ("", GetDomainFromHost("localhost.")); | 127 EXPECT_EQ("", GetDomainFromHost("localhost.")); |
| 116 EXPECT_EQ("", GetDomainFromHost(".localhost.")); | 128 EXPECT_EQ("", GetDomainFromHost(".localhost.")); |
| 117 } | 129 } |
| 118 | 130 |
| 119 TEST_F(RegistryControlledDomainTest, TestGetRegistryLength) { | 131 TEST_F(RegistryControlledDomainTest, TestGetRegistryLength) { |
| 120 UseDomainData(Perfect_Hash_Test1::FindDomain); | 132 UseDomainData(Perfect_Hash_Test1::FindDomain); |
| 121 | 133 |
| 122 // Test GURL version of GetRegistryLength(). | 134 // Test GURL version of GetRegistryLength(). |
| 123 EXPECT_EQ(2U, GetRegistryLengthFromURL("http://a.baz.jp/file.html", false)); | 135 EXPECT_EQ(2U, GetRegistryLengthFromURL( |
| 124 // 1 | 136 "http://a.baz.jp/file.html", EXCLUDE_UNKNOWN_REGISTRIES)); // 1 |
| 125 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://a.baz.jp./file.html", false)); | 137 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 126 // 1 | 138 "http://a.baz.jp./file.html", EXCLUDE_UNKNOWN_REGISTRIES)); // 1 |
| 127 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://ac.jp", false)); // 2 | 139 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 128 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://a.bar.jp", false)); // 3 | 140 "http://ac.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 2 |
| 129 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://bar.jp", false)); // 3 | 141 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 130 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://baz.bar.jp", false)); // 3 4 | 142 "http://a.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 3 |
| 131 EXPECT_EQ(12U, GetRegistryLengthFromURL("http://a.b.baz.bar.jp", false)); | 143 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 132 // 4 | 144 "http://bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 3 |
| 133 EXPECT_EQ(6U, GetRegistryLengthFromURL("http://baz.pref.bar.jp", false)); | 145 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 134 // 5 | 146 "http://baz.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 3 4 |
| 135 EXPECT_EQ(11U, GetRegistryLengthFromURL("http://a.b.bar.baz.com", false)); | 147 EXPECT_EQ(12U, GetRegistryLengthFromURL( |
| 136 // 6 | 148 "http://a.b.baz.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 4 |
| 137 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://a.d.c", false)); // 7 | 149 EXPECT_EQ(6U, GetRegistryLengthFromURL( |
| 138 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://.a.d.c", false)); // 7 | 150 "http://baz.pref.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 5 |
| 139 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://..a.d.c", false)); // 7 | 151 EXPECT_EQ(11U, GetRegistryLengthFromURL( |
| 140 EXPECT_EQ(1U, GetRegistryLengthFromURL("http://a.b.c", false)); // 7 8 | 152 "http://a.b.bar.baz.com", EXCLUDE_UNKNOWN_REGISTRIES)); // 6 |
| 141 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://baz.com", false)); // none | 153 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 142 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://baz.com.", false)); // none | 154 "http://a.d.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 |
| 143 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://baz.com", true)); // none | 155 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 144 EXPECT_EQ(4U, GetRegistryLengthFromURL("http://baz.com.", true)); // none | 156 "http://.a.d.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 |
| 157 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 158 "http://..a.d.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 |
| 159 EXPECT_EQ(1U, GetRegistryLengthFromURL( |
| 160 "http://a.b.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 8 |
| 161 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 162 "http://baz.com", EXCLUDE_UNKNOWN_REGISTRIES)); // none |
| 163 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 164 "http://baz.com.", EXCLUDE_UNKNOWN_REGISTRIES)); // none |
| 165 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 166 "http://baz.com", INCLUDE_UNKNOWN_REGISTRIES)); // none |
| 167 EXPECT_EQ(4U, GetRegistryLengthFromURL( |
| 168 "http://baz.com.", INCLUDE_UNKNOWN_REGISTRIES)); // none |
| 145 | 169 |
| 146 EXPECT_EQ(std::string::npos, GetRegistryLengthFromURL(std::string(), false)); | 170 EXPECT_EQ(std::string::npos, GetRegistryLengthFromURL( |
| 147 EXPECT_EQ(std::string::npos, GetRegistryLengthFromURL("http://", false)); | 171 std::string(), EXCLUDE_UNKNOWN_REGISTRIES)); |
| 148 EXPECT_EQ(std::string::npos, | 172 EXPECT_EQ(std::string::npos, GetRegistryLengthFromURL( |
| 149 GetRegistryLengthFromURL("file:///C:/file.html", false)); | 173 "http://", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 150 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://foo.com..", false)); | 174 EXPECT_EQ(std::string::npos, GetRegistryLengthFromURL( |
| 151 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://...", false)); | 175 "file:///C:/file.html", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 152 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://192.168.0.1", false)); | 176 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 153 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://localhost", false)); | 177 "http://foo.com..", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 154 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://localhost", true)); | 178 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 155 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://localhost.", false)); | 179 "http://...", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 156 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://localhost.", true)); | 180 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 157 EXPECT_EQ(0U, GetRegistryLengthFromURL("http:////Comment", false)); | 181 "http://192.168.0.1", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 182 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 183 "http://localhost", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 184 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 185 "http://localhost", INCLUDE_UNKNOWN_REGISTRIES)); |
| 186 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 187 "http://localhost.", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 188 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 189 "http://localhost.", INCLUDE_UNKNOWN_REGISTRIES)); |
| 190 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 191 "http:////Comment", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 158 | 192 |
| 159 // Test std::string version of GetRegistryLength(). Uses the same | 193 // Test std::string version of GetRegistryLength(). Uses the same |
| 160 // underpinnings as the GURL version, so this is really more of a check of | 194 // underpinnings as the GURL version, so this is really more of a check of |
| 161 // CanonicalizeHost(). | 195 // CanonicalizeHost(). |
| 162 EXPECT_EQ(2U, GetRegistryLengthFromHost("a.baz.jp", false)); // 1 | 196 EXPECT_EQ(2U, GetRegistryLengthFromHost( |
| 163 EXPECT_EQ(3U, GetRegistryLengthFromHost("a.baz.jp.", false)); // 1 | 197 "a.baz.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 1 |
| 164 EXPECT_EQ(0U, GetRegistryLengthFromHost("ac.jp", false)); // 2 | 198 EXPECT_EQ(3U, GetRegistryLengthFromHost( |
| 165 EXPECT_EQ(0U, GetRegistryLengthFromHost("a.bar.jp", false)); // 3 | 199 "a.baz.jp.", EXCLUDE_UNKNOWN_REGISTRIES)); // 1 |
| 166 EXPECT_EQ(0U, GetRegistryLengthFromHost("bar.jp", false)); // 3 | 200 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 167 EXPECT_EQ(0U, GetRegistryLengthFromHost("baz.bar.jp", false)); // 3 4 | 201 "ac.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 2 |
| 168 EXPECT_EQ(12U, GetRegistryLengthFromHost("a.b.baz.bar.jp", false)); // 4 | 202 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 169 EXPECT_EQ(6U, GetRegistryLengthFromHost("baz.pref.bar.jp", false)); // 5 | 203 "a.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 3 |
| 170 EXPECT_EQ(11U, GetRegistryLengthFromHost("a.b.bar.baz.com", false)); // 6 | 204 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 171 EXPECT_EQ(3U, GetRegistryLengthFromHost("a.d.c", false)); // 7 | 205 "bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 3 |
| 172 EXPECT_EQ(3U, GetRegistryLengthFromHost(".a.d.c", false)); // 7 | 206 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 173 EXPECT_EQ(3U, GetRegistryLengthFromHost("..a.d.c", false)); // 7 | 207 "baz.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 3 4 |
| 174 EXPECT_EQ(1U, GetRegistryLengthFromHost("a.b.c", false)); // 7 8 | 208 EXPECT_EQ(12U, GetRegistryLengthFromHost( |
| 175 EXPECT_EQ(0U, GetRegistryLengthFromHost("baz.com", false)); // none | 209 "a.b.baz.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 4 |
| 176 EXPECT_EQ(0U, GetRegistryLengthFromHost("baz.com.", false)); // none | 210 EXPECT_EQ(6U, GetRegistryLengthFromHost( |
| 177 EXPECT_EQ(3U, GetRegistryLengthFromHost("baz.com", true)); // none | 211 "baz.pref.bar.jp", EXCLUDE_UNKNOWN_REGISTRIES)); // 5 |
| 178 EXPECT_EQ(4U, GetRegistryLengthFromHost("baz.com.", true)); // none | 212 EXPECT_EQ(11U, GetRegistryLengthFromHost( |
| 213 "a.b.bar.baz.com", EXCLUDE_UNKNOWN_REGISTRIES)); // 6 |
| 214 EXPECT_EQ(3U, GetRegistryLengthFromHost( |
| 215 "a.d.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 |
| 216 EXPECT_EQ(3U, GetRegistryLengthFromHost( |
| 217 ".a.d.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 |
| 218 EXPECT_EQ(3U, GetRegistryLengthFromHost( |
| 219 "..a.d.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 |
| 220 EXPECT_EQ(1U, GetRegistryLengthFromHost( |
| 221 "a.b.c", EXCLUDE_UNKNOWN_REGISTRIES)); // 7 8 |
| 222 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 223 "baz.com", EXCLUDE_UNKNOWN_REGISTRIES)); // none |
| 224 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 225 "baz.com.", EXCLUDE_UNKNOWN_REGISTRIES)); // none |
| 226 EXPECT_EQ(3U, GetRegistryLengthFromHost( |
| 227 "baz.com", INCLUDE_UNKNOWN_REGISTRIES)); // none |
| 228 EXPECT_EQ(4U, GetRegistryLengthFromHost( |
| 229 "baz.com.", INCLUDE_UNKNOWN_REGISTRIES)); // none |
| 179 | 230 |
| 180 EXPECT_EQ(std::string::npos, GetRegistryLengthFromHost(std::string(), false)); | 231 EXPECT_EQ(std::string::npos, |
| 181 EXPECT_EQ(0U, GetRegistryLengthFromHost("foo.com..", false)); | 232 GetRegistryLengthFromHost(std::string(), |
| 182 EXPECT_EQ(0U, GetRegistryLengthFromHost("..", false)); | 233 EXCLUDE_UNKNOWN_REGISTRIES)); |
| 183 EXPECT_EQ(0U, GetRegistryLengthFromHost("192.168.0.1", false)); | 234 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 184 EXPECT_EQ(0U, GetRegistryLengthFromHost("localhost", false)); | 235 "foo.com..", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 185 EXPECT_EQ(0U, GetRegistryLengthFromHost("localhost", true)); | 236 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 186 EXPECT_EQ(0U, GetRegistryLengthFromHost("localhost.", false)); | 237 "..", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 187 EXPECT_EQ(0U, GetRegistryLengthFromHost("localhost.", true)); | 238 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 239 "192.168.0.1", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 240 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 241 "localhost", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 242 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 243 "localhost", INCLUDE_UNKNOWN_REGISTRIES)); |
| 244 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 245 "localhost.", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 246 EXPECT_EQ(0U, GetRegistryLengthFromHost( |
| 247 "localhost.", INCLUDE_UNKNOWN_REGISTRIES)); |
| 188 } | 248 } |
| 189 | 249 |
| 190 TEST_F(RegistryControlledDomainTest, TestSameDomainOrHost) { | 250 TEST_F(RegistryControlledDomainTest, TestSameDomainOrHost) { |
| 191 UseDomainData(Perfect_Hash_Test2::FindDomain); | 251 UseDomainData(Perfect_Hash_Test2::FindDomain); |
| 192 | 252 |
| 193 EXPECT_TRUE(CompareDomains("http://a.b.bar.jp/file.html", | 253 EXPECT_TRUE(CompareDomains("http://a.b.bar.jp/file.html", |
| 194 "http://a.b.bar.jp/file.html")); // b.bar.jp | 254 "http://a.b.bar.jp/file.html")); // b.bar.jp |
| 195 EXPECT_TRUE(CompareDomains("http://a.b.bar.jp/file.html", | 255 EXPECT_TRUE(CompareDomains("http://a.b.bar.jp/file.html", |
| 196 "http://b.b.bar.jp/file.html")); // b.bar.jp | 256 "http://b.b.bar.jp/file.html")); // b.bar.jp |
| 197 EXPECT_FALSE(CompareDomains("http://a.foo.jp/file.html", // foo.jp | 257 EXPECT_FALSE(CompareDomains("http://a.foo.jp/file.html", // foo.jp |
| (...skipping 13 matching lines...) Expand all Loading... |
| 211 EXPECT_TRUE(CompareDomains("http://127.0.0.1/file.html", | 271 EXPECT_TRUE(CompareDomains("http://127.0.0.1/file.html", |
| 212 "http://127.0.0.1/file.html")); // 127.0.0.1 | 272 "http://127.0.0.1/file.html")); // 127.0.0.1 |
| 213 EXPECT_FALSE(CompareDomains("http://192.168.0.1/file.html", // 192.168.0.1 | 273 EXPECT_FALSE(CompareDomains("http://192.168.0.1/file.html", // 192.168.0.1 |
| 214 "http://127.0.0.1/file.html")); // 127.0.0.1 | 274 "http://127.0.0.1/file.html")); // 127.0.0.1 |
| 215 EXPECT_FALSE(CompareDomains("file:///C:/file.html", | 275 EXPECT_FALSE(CompareDomains("file:///C:/file.html", |
| 216 "file:///C:/file.html")); // no host | 276 "file:///C:/file.html")); // no host |
| 217 } | 277 } |
| 218 | 278 |
| 219 TEST_F(RegistryControlledDomainTest, TestDefaultData) { | 279 TEST_F(RegistryControlledDomainTest, TestDefaultData) { |
| 220 // Note that no data is set: we're using the default rules. | 280 // Note that no data is set: we're using the default rules. |
| 221 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://google.com", false)); | 281 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 222 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://stanford.edu", false)); | 282 "http://google.com", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 223 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://ustreas.gov", false)); | 283 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 224 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://icann.net", false)); | 284 "http://stanford.edu", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 225 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://ferretcentral.org", false)); | 285 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 226 EXPECT_EQ(0U, GetRegistryLengthFromURL("http://nowhere.foo", false)); | 286 "http://ustreas.gov", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 227 EXPECT_EQ(3U, GetRegistryLengthFromURL("http://nowhere.foo", true)); | 287 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 288 "http://icann.net", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 289 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 290 "http://ferretcentral.org", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 291 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 292 "http://nowhere.foo", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 293 EXPECT_EQ(3U, GetRegistryLengthFromURL( |
| 294 "http://nowhere.foo", INCLUDE_UNKNOWN_REGISTRIES)); |
| 228 } | 295 } |
| 229 | 296 |
| 297 TEST_F(RegistryControlledDomainTest, TestPrivateRegistryHandling) { |
| 298 UseDomainData(Perfect_Hash_Test1::FindDomain); |
| 299 // Testing the same dataset for INCLUDE_PRIVATE_REGISTRIES and |
| 300 // EXCLUDE_PRIVATE_REGISTRIES arguments. |
| 301 // For the domain data used for this test, the private registries are |
| 302 // 'priv.no' and 'private'. |
| 303 |
| 304 // Non-private registries. |
| 305 EXPECT_EQ(2U, GetRegistryLengthFromURL( |
| 306 "http://priv.no", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 307 EXPECT_EQ(2U, GetRegistryLengthFromURL( |
| 308 "http://foo.priv.no", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 309 EXPECT_EQ(2U, GetRegistryLengthFromURL( |
| 310 "http://foo.jp", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 311 EXPECT_EQ(2U, GetRegistryLengthFromURL( |
| 312 "http://www.foo.jp", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 313 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 314 "http://private", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 315 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 316 "http://foo.private", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 317 EXPECT_EQ(0U, GetRegistryLengthFromURL( |
| 318 "http://private", INCLUDE_UNKNOWN_REGISTRIES)); |
| 319 EXPECT_EQ(7U, GetRegistryLengthFromURL( |
| 320 "http://foo.private", INCLUDE_UNKNOWN_REGISTRIES)); |
| 321 |
| 322 // Private registries. |
| 323 EXPECT_EQ(0U, GetRegistryLengthFromURLIncludingPrivate( |
| 324 "http://priv.no", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 325 EXPECT_EQ(7U, GetRegistryLengthFromURLIncludingPrivate( |
| 326 "http://foo.priv.no", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 327 EXPECT_EQ(2U, GetRegistryLengthFromURLIncludingPrivate( |
| 328 "http://foo.jp", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 329 EXPECT_EQ(2U, GetRegistryLengthFromURLIncludingPrivate( |
| 330 "http://www.foo.jp", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 331 EXPECT_EQ(0U, GetRegistryLengthFromURLIncludingPrivate( |
| 332 "http://private", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 333 EXPECT_EQ(7U, GetRegistryLengthFromURLIncludingPrivate( |
| 334 "http://foo.private", EXCLUDE_UNKNOWN_REGISTRIES)); |
| 335 EXPECT_EQ(0U, GetRegistryLengthFromURLIncludingPrivate( |
| 336 "http://private", INCLUDE_UNKNOWN_REGISTRIES)); |
| 337 EXPECT_EQ(7U, GetRegistryLengthFromURLIncludingPrivate( |
| 338 "http://foo.private", INCLUDE_UNKNOWN_REGISTRIES)); |
| 339 } |
| 340 |
| 341 |
| 342 } // namespace registry_controlled_domains |
| 230 } // namespace net | 343 } // namespace net |
| OLD | NEW |