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

Unified Diff: trunk/src/net/base/registry_controlled_domains/registry_controlled_domain_unittest.cc

Issue 270503004: Revert 268650 "Reduce footprint of registry controlled domain table" (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « trunk/src/net/base/registry_controlled_domains/registry_controlled_domain.cc ('k') | trunk/src/net/net.gyp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: trunk/src/net/base/registry_controlled_domains/registry_controlled_domain_unittest.cc
===================================================================
--- trunk/src/net/base/registry_controlled_domains/registry_controlled_domain_unittest.cc (revision 268650)
+++ trunk/src/net/base/registry_controlled_domains/registry_controlled_domain_unittest.cc (working copy)
@@ -6,26 +6,15 @@
#include "testing/gtest/include/gtest/gtest.h"
#include "url/gurl.h"
-namespace {
-namespace test1 {
-#include "effective_tld_names_unittest1-inc.cc"
-}
-namespace test2 {
-#include "effective_tld_names_unittest2-inc.cc"
-}
-namespace test3 {
-#include "effective_tld_names_unittest3-inc.cc"
-}
-namespace test4 {
-#include "effective_tld_names_unittest4-inc.cc"
-}
-namespace test5 {
-#include "effective_tld_names_unittest5-inc.cc"
-}
-namespace test6 {
-#include "effective_tld_names_unittest6-inc.cc"
-}
-} // namespace
+#include "effective_tld_names_unittest1.cc"
+static const char* const Perfect_Hash_Test1_stringpool = stringpool1;
+#undef TOTAL_KEYWORDS
+#undef MIN_WORD_LENGTH
+#undef MAX_WORD_LENGTH
+#undef MIN_HASH_VALUE
+#undef MAX_HASH_VALUE
+#include "effective_tld_names_unittest2.cc"
+static const char* const Perfect_Hash_Test2_stringpool = stringpool2;
namespace net {
namespace registry_controlled_domains {
@@ -61,12 +50,6 @@
return GetRegistryLength(host, unknown_filter, EXCLUDE_PRIVATE_REGISTRIES);
}
-size_t GetRegistryLengthFromHostIncludingPrivate(
- const std::string& host,
- UnknownRegistryFilter unknown_filter) {
- return GetRegistryLength(host, unknown_filter, INCLUDE_PRIVATE_REGISTRIES);
-}
-
bool CompareDomains(const std::string& url1, const std::string& url2) {
GURL g1 = GURL(url1);
GURL g2 = GURL(url2);
@@ -77,16 +60,17 @@
class RegistryControlledDomainTest : public testing::Test {
protected:
- template <typename Graph>
- void UseDomainData(const Graph& graph) {
- SetFindDomainGraph(graph, sizeof(Graph));
+ void UseDomainData(FindDomainPtr function, const char* const stringpool) {
+ SetFindDomainFunctionAndStringPoolForTesting(function, stringpool);
}
- virtual void TearDown() { SetFindDomainGraph(); }
+ virtual void TearDown() {
+ SetFindDomainFunctionAndStringPoolForTesting(NULL, NULL);
+ }
};
TEST_F(RegistryControlledDomainTest, TestGetDomainAndRegistry) {
- UseDomainData(test1::kDafsa);
+ UseDomainData(Perfect_Hash_Test1::FindDomain, Perfect_Hash_Test1_stringpool);
// Test GURL version of GetDomainAndRegistry().
EXPECT_EQ("baz.jp", GetDomainFromURL("http://a.baz.jp/file.html")); // 1
@@ -145,7 +129,7 @@
}
TEST_F(RegistryControlledDomainTest, TestGetRegistryLength) {
- UseDomainData(test1::kDafsa);
+ UseDomainData(Perfect_Hash_Test1::FindDomain, Perfect_Hash_Test1_stringpool);
// Test GURL version of GetRegistryLength().
EXPECT_EQ(2U, GetRegistryLengthFromURL("http://a.baz.jp/file.html",
@@ -264,7 +248,7 @@
}
TEST_F(RegistryControlledDomainTest, TestSameDomainOrHost) {
- UseDomainData(test2::kDafsa);
+ UseDomainData(Perfect_Hash_Test2::FindDomain, Perfect_Hash_Test2_stringpool);
EXPECT_TRUE(CompareDomains("http://a.b.bar.jp/file.html",
"http://a.b.bar.jp/file.html")); // b.bar.jp
@@ -311,7 +295,7 @@
}
TEST_F(RegistryControlledDomainTest, TestPrivateRegistryHandling) {
- UseDomainData(test1::kDafsa);
+ UseDomainData(Perfect_Hash_Test1::FindDomain, Perfect_Hash_Test1_stringpool);
// Testing the same dataset for INCLUDE_PRIVATE_REGISTRIES and
// EXCLUDE_PRIVATE_REGISTRIES arguments.
@@ -363,138 +347,6 @@
INCLUDE_UNKNOWN_REGISTRIES));
}
-TEST_F(RegistryControlledDomainTest, TestDafsaTwoByteOffsets) {
- UseDomainData(test3::kDafsa);
- // Testing to lookup keys in a DAFSA with two byte offsets.
- // This DAFSA is constructed so that labels begin and end with unique
- // characters, which makes it impossible to merge labels. Each inner node
- // is about 100 bytes and a one byte offset can at most add 64 bytes to
- // previous offset. Thus the paths must go over two byte offsets.
-
- const char* key0 =
- "a.b.6____________________________________________________"
- "________________________________________________6";
- const char* key1 =
- "a.b.7____________________________________________________"
- "________________________________________________7";
- const char* key2 =
- "a.b.a____________________________________________________"
- "________________________________________________8";
-
- EXPECT_EQ(102U, GetRegistryLengthFromHost(key0, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(102U,
- GetRegistryLengthFromHostIncludingPrivate(
- key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key2, EXCLUDE_UNKNOWN_REGISTRIES));
-}
-
-TEST_F(RegistryControlledDomainTest, TestDafsaThreeByteOffsets) {
- UseDomainData(test4::kDafsa);
-
- // Testing to lookup keys in a DAFSA with three byte offsets.
- // This DAFSA is constructed so that labels begin and end with unique
- // characters, which makes it impossible to merge labels. The byte array
- // has a size of ~54k. A two byte offset can add at most add 8k to the
- // previous offset. Since we can skip only forward in memory, the nodes
- // representing the return values must be located near the end of the byte
- // array. The probability that we can reach from an arbitrary inner node to
- // a return value without using a three byte offset is small (but not zero).
- // The test is repeated with some different keys and with a reasonable
- // probability at least one of the tested paths has go over a three byte
- // offset.
-
- const char* key0 =
- "a.b.Z6___________________________________________________"
- "_________________________________________________Z6";
- const char* key1 =
- "a.b.Z7___________________________________________________"
- "_________________________________________________Z7";
- const char* key2 =
- "a.b.Za___________________________________________________"
- "_________________________________________________Z8";
-
- EXPECT_EQ(104U, GetRegistryLengthFromHost(key0, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(104U,
- GetRegistryLengthFromHostIncludingPrivate(
- key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key2, EXCLUDE_UNKNOWN_REGISTRIES));
-}
-
-TEST_F(RegistryControlledDomainTest, TestDafsaJoinedPrefixes) {
- UseDomainData(test5::kDafsa);
-
- // Testing to lookup keys in a DAFSA with compressed prefixes.
- // This DAFSA is constructed from words with similar prefixes but distinct
- // suffixes. The DAFSA will then form a trie with the implicit source node
- // as root.
-
- const char* key0 = "a.b.ai";
- const char* key1 = "a.b.bj";
- const char* key2 = "a.b.aak";
- const char* key3 = "a.b.bbl";
- const char* key4 = "a.b.aaa";
- const char* key5 = "a.b.bbb";
- const char* key6 = "a.b.aaaam";
- const char* key7 = "a.b.bbbbn";
-
- EXPECT_EQ(2U, GetRegistryLengthFromHost(key0, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(2U,
- GetRegistryLengthFromHostIncludingPrivate(
- key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(3U, GetRegistryLengthFromHost(key2, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key3, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(3U,
- GetRegistryLengthFromHostIncludingPrivate(
- key3, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U,
- GetRegistryLengthFromHostIncludingPrivate(
- key4, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U,
- GetRegistryLengthFromHostIncludingPrivate(
- key5, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(5U, GetRegistryLengthFromHost(key6, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(5U, GetRegistryLengthFromHost(key7, EXCLUDE_UNKNOWN_REGISTRIES));
-}
-
-TEST_F(RegistryControlledDomainTest, TestDafsaJoinedSuffixes) {
- UseDomainData(test6::kDafsa);
-
- // Testing to lookup keys in a DAFSA with compressed suffixes.
- // This DAFSA is constructed from words with similar suffixes but distinct
- // prefixes. The DAFSA will then form a trie with the implicit sink node as
- // root.
-
- const char* key0 = "a.b.ia";
- const char* key1 = "a.b.jb";
- const char* key2 = "a.b.kaa";
- const char* key3 = "a.b.lbb";
- const char* key4 = "a.b.aaa";
- const char* key5 = "a.b.bbb";
- const char* key6 = "a.b.maaaa";
- const char* key7 = "a.b.nbbbb";
-
- EXPECT_EQ(2U, GetRegistryLengthFromHost(key0, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(2U,
- GetRegistryLengthFromHostIncludingPrivate(
- key1, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(3U, GetRegistryLengthFromHost(key2, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U, GetRegistryLengthFromHost(key3, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(3U,
- GetRegistryLengthFromHostIncludingPrivate(
- key3, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U,
- GetRegistryLengthFromHostIncludingPrivate(
- key4, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(0U,
- GetRegistryLengthFromHostIncludingPrivate(
- key5, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(5U, GetRegistryLengthFromHost(key6, EXCLUDE_UNKNOWN_REGISTRIES));
- EXPECT_EQ(5U, GetRegistryLengthFromHost(key7, EXCLUDE_UNKNOWN_REGISTRIES));
-}
} // namespace registry_controlled_domains
} // namespace net
« no previous file with comments | « trunk/src/net/base/registry_controlled_domains/registry_controlled_domain.cc ('k') | trunk/src/net/net.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698