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

Side by Side Diff: chrome/browser/chromeos/drive/search_metadata_unittest.cc

Issue 12833019: Eliminate small CopyResultFromXxxCallback families in drive_test_util. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « chrome/browser/chromeos/drive/drive_test_util.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "chrome/browser/chromeos/drive/search_metadata.h" 5 #include "chrome/browser/chromeos/drive/search_metadata.h"
6 6
7 #include "base/message_loop.h" 7 #include "base/message_loop.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "base/threading/sequenced_worker_pool.h" 9 #include "base/threading/sequenced_worker_pool.h"
10 #include "chrome/browser/chromeos/drive/drive_cache.h" 10 #include "chrome/browser/chromeos/drive/drive_cache.h"
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 scoped_ptr<DriveFileSystem> file_system_; 100 scoped_ptr<DriveFileSystem> file_system_;
101 }; 101 };
102 102
103 TEST_F(SearchMetadataTest, SearchMetadata_ZeroMatches) { 103 TEST_F(SearchMetadataTest, SearchMetadata_ZeroMatches) {
104 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 104 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
105 scoped_ptr<MetadataSearchResultVector> result; 105 scoped_ptr<MetadataSearchResultVector> result;
106 106
107 SearchMetadata(file_system_.get(), 107 SearchMetadata(file_system_.get(),
108 "NonExistent", 108 "NonExistent",
109 kDefaultAtMostNumMatches, 109 kDefaultAtMostNumMatches,
110 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 110 google_apis::test_util::CreateCopyResultCallback(
111 &error, 111 &error, &result));
112 &result));
113
114 google_apis::test_util::RunBlockingPoolTask(); 112 google_apis::test_util::RunBlockingPoolTask();
115 EXPECT_EQ(DRIVE_FILE_OK, error); 113 EXPECT_EQ(DRIVE_FILE_OK, error);
116 ASSERT_EQ(0U, result->size()); 114 ASSERT_EQ(0U, result->size());
117 } 115 }
118 116
119 TEST_F(SearchMetadataTest, SearchMetadata_RegularFile) { 117 TEST_F(SearchMetadataTest, SearchMetadata_RegularFile) {
120 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 118 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
121 scoped_ptr<MetadataSearchResultVector> result; 119 scoped_ptr<MetadataSearchResultVector> result;
122 120
123 SearchMetadata(file_system_.get(), 121 SearchMetadata(file_system_.get(),
124 "SubDirectory File 1.txt", 122 "SubDirectory File 1.txt",
125 kDefaultAtMostNumMatches, 123 kDefaultAtMostNumMatches,
126 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 124 google_apis::test_util::CreateCopyResultCallback(
127 &error, 125 &error, &result));
128 &result));
129
130 google_apis::test_util::RunBlockingPoolTask(); 126 google_apis::test_util::RunBlockingPoolTask();
131 EXPECT_EQ(DRIVE_FILE_OK, error); 127 EXPECT_EQ(DRIVE_FILE_OK, error);
132 ASSERT_EQ(1U, result->size()); 128 ASSERT_EQ(1U, result->size());
133 EXPECT_EQ(base::FilePath::FromUTF8Unsafe( 129 EXPECT_EQ(base::FilePath::FromUTF8Unsafe(
134 "drive/Directory 1/SubDirectory File 1.txt"), result->at(0).path); 130 "drive/Directory 1/SubDirectory File 1.txt"), result->at(0).path);
135 } 131 }
136 132
137 // This test checks if |FindAndHighlight| does case-insensitive search. 133 // This test checks if |FindAndHighlight| does case-insensitive search.
138 // Tricker test cases for |FindAndHighlight| can be found below. 134 // Tricker test cases for |FindAndHighlight| can be found below.
139 TEST_F(SearchMetadataTest, SearchMetadata_CaseInsensitiveSearch) { 135 TEST_F(SearchMetadataTest, SearchMetadata_CaseInsensitiveSearch) {
140 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 136 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
141 scoped_ptr<MetadataSearchResultVector> result; 137 scoped_ptr<MetadataSearchResultVector> result;
142 138
143 // The query is all in lower case. 139 // The query is all in lower case.
144 SearchMetadata(file_system_.get(), 140 SearchMetadata(file_system_.get(),
145 "subdirectory file 1.txt", 141 "subdirectory file 1.txt",
146 kDefaultAtMostNumMatches, 142 kDefaultAtMostNumMatches,
147 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 143 google_apis::test_util::CreateCopyResultCallback(
148 &error, 144 &error, &result));
149 &result));
150
151 google_apis::test_util::RunBlockingPoolTask(); 145 google_apis::test_util::RunBlockingPoolTask();
152 EXPECT_EQ(DRIVE_FILE_OK, error); 146 EXPECT_EQ(DRIVE_FILE_OK, error);
153 ASSERT_EQ(1U, result->size()); 147 ASSERT_EQ(1U, result->size());
154 EXPECT_EQ(base::FilePath::FromUTF8Unsafe( 148 EXPECT_EQ(base::FilePath::FromUTF8Unsafe(
155 "drive/Directory 1/SubDirectory File 1.txt"), result->at(0).path); 149 "drive/Directory 1/SubDirectory File 1.txt"), result->at(0).path);
156 } 150 }
157 151
158 TEST_F(SearchMetadataTest, SearchMetadata_RegularFiles) { 152 TEST_F(SearchMetadataTest, SearchMetadata_RegularFiles) {
159 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 153 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
160 scoped_ptr<MetadataSearchResultVector> result; 154 scoped_ptr<MetadataSearchResultVector> result;
161 155
162 SearchMetadata(file_system_.get(), 156 SearchMetadata(file_system_.get(),
163 "SubDir", 157 "SubDir",
164 kDefaultAtMostNumMatches, 158 kDefaultAtMostNumMatches,
165 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 159 google_apis::test_util::CreateCopyResultCallback(
166 &error, 160 &error, &result));
167 &result));
168
169 google_apis::test_util::RunBlockingPoolTask(); 161 google_apis::test_util::RunBlockingPoolTask();
170 EXPECT_EQ(DRIVE_FILE_OK, error); 162 EXPECT_EQ(DRIVE_FILE_OK, error);
171 ASSERT_EQ(2U, result->size()); 163 ASSERT_EQ(2U, result->size());
172 164
173 // The results should be sorted by the last accessed time. 165 // The results should be sorted by the last accessed time.
174 EXPECT_EQ(12970368000000000LL, 166 EXPECT_EQ(12970368000000000LL,
175 result->at(0).entry_proto.file_info().last_accessed()); 167 result->at(0).entry_proto.file_info().last_accessed());
176 EXPECT_EQ(12969849600000000LL, 168 EXPECT_EQ(12969849600000000LL,
177 result->at(1).entry_proto.file_info().last_accessed()); 169 result->at(1).entry_proto.file_info().last_accessed());
178 170
179 // All base names should contain "File". 171 // All base names should contain "File".
180 EXPECT_EQ( 172 EXPECT_EQ(
181 base::FilePath::FromUTF8Unsafe( 173 base::FilePath::FromUTF8Unsafe(
182 "drive/Slash \xE2\x88\x95 in directory/Slash SubDir File.txt"), 174 "drive/Slash \xE2\x88\x95 in directory/Slash SubDir File.txt"),
183 result->at(0).path); 175 result->at(0).path);
184 EXPECT_EQ(base::FilePath::FromUTF8Unsafe( 176 EXPECT_EQ(base::FilePath::FromUTF8Unsafe(
185 "drive/Directory 1/SubDirectory File 1.txt"), result->at(1).path); 177 "drive/Directory 1/SubDirectory File 1.txt"), result->at(1).path);
186 } 178 }
187 179
188 TEST_F(SearchMetadataTest, SearchMetadata_AtMostOneFile) { 180 TEST_F(SearchMetadataTest, SearchMetadata_AtMostOneFile) {
189 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 181 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
190 scoped_ptr<MetadataSearchResultVector> result; 182 scoped_ptr<MetadataSearchResultVector> result;
191 183
192 // There are two files matching "SubDir" but only one file should be 184 // There are two files matching "SubDir" but only one file should be
193 // returned. 185 // returned.
194 SearchMetadata(file_system_.get(), 186 SearchMetadata(file_system_.get(),
195 "SubDir", 187 "SubDir",
196 1, // at_most_num_matches 188 1, // at_most_num_matches
197 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 189 google_apis::test_util::CreateCopyResultCallback(
198 &error, 190 &error, &result));
199 &result));
200
201 google_apis::test_util::RunBlockingPoolTask(); 191 google_apis::test_util::RunBlockingPoolTask();
202 EXPECT_EQ(DRIVE_FILE_OK, error); 192 EXPECT_EQ(DRIVE_FILE_OK, error);
203 ASSERT_EQ(1U, result->size()); 193 ASSERT_EQ(1U, result->size());
204 EXPECT_EQ( 194 EXPECT_EQ(
205 base::FilePath::FromUTF8Unsafe( 195 base::FilePath::FromUTF8Unsafe(
206 "drive/Slash \xE2\x88\x95 in directory/Slash SubDir File.txt"), 196 "drive/Slash \xE2\x88\x95 in directory/Slash SubDir File.txt"),
207 result->at(0).path); 197 result->at(0).path);
208 } 198 }
209 199
210 TEST_F(SearchMetadataTest, SearchMetadata_Directory) { 200 TEST_F(SearchMetadataTest, SearchMetadata_Directory) {
211 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 201 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
212 scoped_ptr<MetadataSearchResultVector> result; 202 scoped_ptr<MetadataSearchResultVector> result;
213 203
214 SearchMetadata(file_system_.get(), 204 SearchMetadata(file_system_.get(),
215 "Directory 1", 205 "Directory 1",
216 kDefaultAtMostNumMatches, 206 kDefaultAtMostNumMatches,
217 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 207 google_apis::test_util::CreateCopyResultCallback(
218 &error, 208 &error, &result));
219 &result));
220
221 google_apis::test_util::RunBlockingPoolTask(); 209 google_apis::test_util::RunBlockingPoolTask();
222 EXPECT_EQ(DRIVE_FILE_OK, error); 210 EXPECT_EQ(DRIVE_FILE_OK, error);
223 ASSERT_EQ(1U, result->size()); 211 ASSERT_EQ(1U, result->size());
224 EXPECT_EQ( 212 EXPECT_EQ(
225 base::FilePath::FromUTF8Unsafe("drive/Directory 1"), 213 base::FilePath::FromUTF8Unsafe("drive/Directory 1"),
226 result->at(0).path); 214 result->at(0).path);
227 } 215 }
228 216
229 TEST_F(SearchMetadataTest, SearchMetadata_HostedDocument) { 217 TEST_F(SearchMetadataTest, SearchMetadata_HostedDocument) {
230 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 218 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
231 scoped_ptr<MetadataSearchResultVector> result; 219 scoped_ptr<MetadataSearchResultVector> result;
232 220
233 SearchMetadata(file_system_.get(), 221 SearchMetadata(file_system_.get(),
234 "Document", 222 "Document",
235 kDefaultAtMostNumMatches, 223 kDefaultAtMostNumMatches,
236 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 224 google_apis::test_util::CreateCopyResultCallback(
237 &error, 225 &error, &result));
238 &result));
239
240 google_apis::test_util::RunBlockingPoolTask(); 226 google_apis::test_util::RunBlockingPoolTask();
241 EXPECT_EQ(DRIVE_FILE_OK, error); 227 EXPECT_EQ(DRIVE_FILE_OK, error);
242 ASSERT_EQ(1U, result->size()); 228 ASSERT_EQ(1U, result->size());
243 229
244 EXPECT_EQ(base::FilePath::FromUTF8Unsafe("drive/Document 1.gdoc"), 230 EXPECT_EQ(base::FilePath::FromUTF8Unsafe("drive/Document 1.gdoc"),
245 result->at(0).path); 231 result->at(0).path);
246 } 232 }
247 233
248 TEST_F(SearchMetadataTest, SearchMetadata_HideHostedDocument) { 234 TEST_F(SearchMetadataTest, SearchMetadata_HideHostedDocument) {
249 // This test is similar to HostedDocument test above, but change a 235 // This test is similar to HostedDocument test above, but change a
250 // preference to hide hosted documents from the result. 236 // preference to hide hosted documents from the result.
251 PrefService* pref_service = profile_->GetPrefs(); 237 PrefService* pref_service = profile_->GetPrefs();
252 pref_service->SetBoolean(prefs::kDisableDriveHostedFiles, true); 238 pref_service->SetBoolean(prefs::kDisableDriveHostedFiles, true);
253 239
254 DriveFileError error = DRIVE_FILE_ERROR_FAILED; 240 DriveFileError error = DRIVE_FILE_ERROR_FAILED;
255 scoped_ptr<MetadataSearchResultVector> result; 241 scoped_ptr<MetadataSearchResultVector> result;
256 242
257 SearchMetadata(file_system_.get(), 243 SearchMetadata(file_system_.get(),
258 "Document", 244 "Document",
259 kDefaultAtMostNumMatches, 245 kDefaultAtMostNumMatches,
260 base::Bind(&test_util::CopyResultsFromSearchMetadataCallback, 246 google_apis::test_util::CreateCopyResultCallback(
261 &error, 247 &error, &result));
262 &result));
263
264 google_apis::test_util::RunBlockingPoolTask(); 248 google_apis::test_util::RunBlockingPoolTask();
265 EXPECT_EQ(DRIVE_FILE_OK, error); 249 EXPECT_EQ(DRIVE_FILE_OK, error);
266 ASSERT_EQ(0U, result->size()); 250 ASSERT_EQ(0U, result->size());
267 } 251 }
268 252
269 TEST(SearchMetadataSimpleTest, FindAndHighlight_ZeroMatches) { 253 TEST(SearchMetadataSimpleTest, FindAndHighlight_ZeroMatches) {
270 std::string highlighted_text; 254 std::string highlighted_text;
271 EXPECT_FALSE(FindAndHighlight("text", "query", &highlighted_text)); 255 EXPECT_FALSE(FindAndHighlight("text", "query", &highlighted_text));
272 } 256 }
273 257
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
328 EXPECT_EQ("&lt;<b>hello</b>&gt;", highlighted_text); 312 EXPECT_EQ("&lt;<b>hello</b>&gt;", highlighted_text);
329 } 313 }
330 314
331 TEST(SearchMetadataSimpleTest, FindAndHighlight_MoreMetaChars) { 315 TEST(SearchMetadataSimpleTest, FindAndHighlight_MoreMetaChars) {
332 std::string highlighted_text; 316 std::string highlighted_text;
333 EXPECT_TRUE(FindAndHighlight("a&b&c&d", "b&c", &highlighted_text)); 317 EXPECT_TRUE(FindAndHighlight("a&b&c&d", "b&c", &highlighted_text));
334 EXPECT_EQ("a&amp;<b>b&amp;c</b>&amp;d", highlighted_text); 318 EXPECT_EQ("a&amp;<b>b&amp;c</b>&amp;d", highlighted_text);
335 } 319 }
336 320
337 } // namespace drive 321 } // namespace drive
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/drive/drive_test_util.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698