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

Side by Side Diff: chrome/browser/android/history_report/delta_file_commons_unittest.cc

Issue 1141283003: Upstream oodles of Chrome for Android code into Chromium. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: final patch? Created 5 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/android/history_report/delta_file_commons.h"
6
7 #include "base/strings/string_number_conversions.h"
8 #include "base/strings/utf_string_conversions.h"
9 #include "components/history/core/browser/history_types.h"
10 #include "testing/gtest/include/gtest/gtest.h"
11
12 using bookmarks::BookmarkModel;
13
14 namespace history_report {
15
16 class DeltaFileEntryWithDataTest : public testing::Test {
17 public:
18 DeltaFileEntryWithDataTest()
19 : entry_(),
20 data_(entry_) {}
21 ~DeltaFileEntryWithDataTest() override {}
22
23 protected:
24 void SetUp() override {}
25
26 DeltaFileEntry entry_;
27 DeltaFileEntryWithData data_;
28
29 private:
30 DISALLOW_COPY_AND_ASSIGN(DeltaFileEntryWithDataTest);
31 };
32
33 TEST_F(DeltaFileEntryWithDataTest, NotValid) {
34 EXPECT_FALSE(data_.Valid());
35 }
36
37 TEST_F(DeltaFileEntryWithDataTest, ValidDelEntry) {
38 DeltaFileEntry entry;
39 entry.set_type("del");
40 DeltaFileEntryWithData data(entry);
41 EXPECT_TRUE(data.Valid());
42 }
43
44 TEST_F(DeltaFileEntryWithDataTest, DelEntryWithData) {
45 DeltaFileEntry entry;
46 entry.set_type("del");
47 DeltaFileEntryWithData data(entry);
48 history::URLRow row;
49 row.set_hidden(false);
50 data.SetData(row);
51 EXPECT_TRUE(data.Valid());
52 // If deletion entry turns out to have data
53 // then it's an update entry instead.
54 EXPECT_EQ("add", data.Type());
55 }
56
57 TEST_F(DeltaFileEntryWithDataTest, Valid) {
58 history::URLRow row;
59 row.set_hidden(false);
60 data_.SetData(row);
61 EXPECT_TRUE(data_.Valid());
62 }
63
64 TEST_F(DeltaFileEntryWithDataTest, Hidden) {
65 history::URLRow row;
66 row.set_hidden(true);
67 data_.SetData(row);
68 EXPECT_FALSE(data_.Valid());
69 }
70
71 TEST_F(DeltaFileEntryWithDataTest, NoBookmarkScore) {
72 history::URLRow row;
73 row.set_hidden(false);
74 row.set_typed_count(2);
75 row.set_visit_count(3);
76 data_.SetData(row);
77 EXPECT_TRUE(data_.Valid());
78 EXPECT_EQ(5, data_.Score());
79 }
80
81 TEST_F(DeltaFileEntryWithDataTest, BookmarkScore) {
82 BookmarkModel::URLAndTitle bookmark;
83 history::URLRow row;
84 row.set_hidden(false);
85 row.set_typed_count(2);
86 row.set_visit_count(3);
87 data_.SetData(row);
88 data_.MarkAsBookmark(bookmark);
89 EXPECT_TRUE(data_.Valid());
90 EXPECT_EQ(18, data_.Score());
91 }
92
93 TEST_F(DeltaFileEntryWithDataTest, NoBookmarkEmptyTitle) {
94 history::URLRow row(GURL("http://www.host.org/path?query=param"));
95 row.set_title(base::UTF8ToUTF16(""));
96 row.set_hidden(false);
97 data_.SetData(row);
98 EXPECT_TRUE(data_.Valid());
99 EXPECT_EQ(base::UTF8ToUTF16("www.host.org"), data_.Title());
100 }
101
102 TEST_F(DeltaFileEntryWithDataTest, NoBookmarkNonEmptyTitle) {
103 history::URLRow row(GURL("http://host.org/path?query=param"));
104 row.set_title(base::UTF8ToUTF16("title"));
105 row.set_hidden(false);
106 data_.SetData(row);
107 EXPECT_TRUE(data_.Valid());
108 EXPECT_EQ(base::UTF8ToUTF16("title"), data_.Title());
109 }
110
111 TEST_F(DeltaFileEntryWithDataTest, BookmarkTitle) {
112 BookmarkModel::URLAndTitle bookmark;
113 bookmark.title = base::UTF8ToUTF16("bookmark_title");
114 history::URLRow row(GURL("http://host.org/path?query=param"));
115 row.set_title(base::UTF8ToUTF16("title"));
116 row.set_hidden(false);
117 data_.SetData(row);
118 data_.MarkAsBookmark(bookmark);
119 EXPECT_TRUE(data_.Valid());
120 EXPECT_EQ(base::UTF8ToUTF16("bookmark_title"), data_.Title());
121 }
122
123 TEST_F(DeltaFileEntryWithDataTest, TrimWWWPrefix) {
124 history::URLRow row(GURL("http://www.host.org/path?query=param"));
125 row.set_hidden(false);
126 data_.SetData(row);
127 EXPECT_TRUE(data_.Valid());
128 EXPECT_EQ("host", data_.IndexedUrl());
129 }
130
131 TEST_F(DeltaFileEntryWithDataTest, TrimWW2Prefix) {
132 history::URLRow row(GURL("http://ww2.host.org/path?query=param"));
133 row.set_hidden(false);
134 data_.SetData(row);
135 EXPECT_TRUE(data_.Valid());
136 EXPECT_EQ("host", data_.IndexedUrl());
137 }
138
139 TEST_F(DeltaFileEntryWithDataTest, TrimComSuffix) {
140 history::URLRow row(GURL("http://host.com/path?query=param"));
141 row.set_hidden(false);
142 data_.SetData(row);
143 EXPECT_TRUE(data_.Valid());
144 EXPECT_EQ("host", data_.IndexedUrl());
145 }
146
147 TEST_F(DeltaFileEntryWithDataTest, TrimCoUKSuffix) {
148 history::URLRow row(GURL("http://host.co.uk/path?query=param"));
149 row.set_hidden(false);
150 data_.SetData(row);
151 EXPECT_TRUE(data_.Valid());
152 EXPECT_EQ("host", data_.IndexedUrl());
153 }
154
155 TEST_F(DeltaFileEntryWithDataTest, TrimOrgKSuffix) {
156 history::URLRow row(GURL("http://host.org/path?query=param"));
157 row.set_hidden(false);
158 data_.SetData(row);
159 EXPECT_TRUE(data_.Valid());
160 EXPECT_EQ("host", data_.IndexedUrl());
161 }
162
163 TEST_F(DeltaFileEntryWithDataTest, TrimRegionalSuffix) {
164 history::URLRow row(GURL("http://host.waw.pl/path?query=param"));
165 row.set_hidden(false);
166 data_.SetData(row);
167 EXPECT_TRUE(data_.Valid());
168 EXPECT_EQ("host", data_.IndexedUrl());
169 }
170
171 TEST_F(DeltaFileEntryWithDataTest, TrimPrivateDomainSuffix) {
172 history::URLRow row(GURL("http://host.appspot.com/path?query=param"));
173 row.set_hidden(false);
174 data_.SetData(row);
175 EXPECT_TRUE(data_.Valid());
176 EXPECT_EQ("host.appspot", data_.IndexedUrl());
177 }
178
179 TEST_F(DeltaFileEntryWithDataTest, IdForShortUrl) {
180 std::string short_url("http://this.is.a.short.url.dot.com");
181
182 EXPECT_TRUE(DeltaFileEntryWithData::IsValidId(short_url));
183
184 DeltaFileEntry entry;
185 entry.set_url(short_url);
186 DeltaFileEntryWithData data(entry);
187
188 EXPECT_EQ(short_url, data.Id());
189 }
190
191 TEST_F(DeltaFileEntryWithDataTest, IdForLongUrl) {
192
193 std::stringstream url("http://domain.com/");
194
195 while (DeltaFileEntryWithData::IsValidId(url.str())) {
196 url << "a";
197 }
198
199 EXPECT_FALSE(DeltaFileEntryWithData::IsValidId(url.str()));
200
201 DeltaFileEntry entry;
202 entry.set_url(url.str());
203 DeltaFileEntryWithData data(entry);
204
205 EXPECT_NE(url.str(), data.Id());
206 EXPECT_TRUE(DeltaFileEntryWithData::IsValidId(data.Id()))
207 << data.Id() << " is not a valid ID";
208
209 std::stringstream expected_length_stream;
210 expected_length_stream << std::setfill('0') << std::setw(8)
211 << base::Uint64ToString(static_cast<uint64>(url.str().size()));
212 std::string length = data.Id().substr(0, 8);
213 EXPECT_EQ(expected_length_stream.str(), length);
214
215 std::string prefix = data.Id().substr(72);
216 std::string expected_prefix(url.str().substr(0, prefix.size()));
217 EXPECT_EQ(expected_prefix, prefix);
218 }
219
220 } // namespace history_report
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698