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

Side by Side Diff: chrome/browser/chromeos/fileapi/external_file_url_request_job_unittest.cc

Issue 1003953008: Remove prerender cookie store, part 4. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@prerender-revert-cookie-store-3
Patch Set: Created 5 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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/fileapi/external_file_url_request_job.h" 5 #include "chrome/browser/chromeos/fileapi/external_file_url_request_job.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/files/file_util.h" 8 #include "base/files/file_util.h"
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
236 236
237 scoped_ptr<TestingProfileManager> profile_manager_; 237 scoped_ptr<TestingProfileManager> profile_manager_;
238 base::ScopedTempDir drive_cache_dir_; 238 base::ScopedTempDir drive_cache_dir_;
239 scoped_refptr<storage::FileSystemContext> file_system_context_; 239 scoped_refptr<storage::FileSystemContext> file_system_context_;
240 }; 240 };
241 241
242 TEST_F(ExternalFileURLRequestJobTest, NonGetMethod) { 242 TEST_F(ExternalFileURLRequestJobTest, NonGetMethod) {
243 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 243 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
244 GURL("externalfile:drive-test-user-hash/root/File 1.txt"), 244 GURL("externalfile:drive-test-user-hash/root/File 1.txt"),
245 net::DEFAULT_PRIORITY, 245 net::DEFAULT_PRIORITY,
246 test_delegate_.get(), 246 test_delegate_.get());
247 NULL));
248 request->set_method("POST"); // Set non "GET" method. 247 request->set_method("POST"); // Set non "GET" method.
249 request->Start(); 248 request->Start();
250 249
251 base::RunLoop().Run(); 250 base::RunLoop().Run();
252 251
253 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status()); 252 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status());
254 EXPECT_EQ(net::ERR_METHOD_NOT_SUPPORTED, request->status().error()); 253 EXPECT_EQ(net::ERR_METHOD_NOT_SUPPORTED, request->status().error());
255 } 254 }
256 255
257 TEST_F(ExternalFileURLRequestJobTest, RegularFile) { 256 TEST_F(ExternalFileURLRequestJobTest, RegularFile) {
258 const GURL kTestUrl("externalfile:drive-test-user-hash/root/File 1.txt"); 257 const GURL kTestUrl("externalfile:drive-test-user-hash/root/File 1.txt");
259 const base::FilePath kTestFilePath("drive/root/File 1.txt"); 258 const base::FilePath kTestFilePath("drive/root/File 1.txt");
260 259
261 // For the first time, the file should be fetched from the server. 260 // For the first time, the file should be fetched from the server.
262 { 261 {
263 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 262 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
264 kTestUrl, net::DEFAULT_PRIORITY, test_delegate_.get(), NULL)); 263 kTestUrl, net::DEFAULT_PRIORITY, test_delegate_.get()));
265 request->Start(); 264 request->Start();
266 265
267 base::RunLoop().Run(); 266 base::RunLoop().Run();
268 267
269 EXPECT_EQ(net::URLRequestStatus::SUCCESS, request->status().status()); 268 EXPECT_EQ(net::URLRequestStatus::SUCCESS, request->status().status());
270 // It looks weird, but the mime type for the "File 1.txt" is "audio/mpeg" 269 // It looks weird, but the mime type for the "File 1.txt" is "audio/mpeg"
271 // on the server. 270 // on the server.
272 std::string mime_type; 271 std::string mime_type;
273 request->GetMimeType(&mime_type); 272 request->GetMimeType(&mime_type);
274 EXPECT_EQ("audio/mpeg", mime_type); 273 EXPECT_EQ("audio/mpeg", mime_type);
(...skipping 29 matching lines...) Expand all
304 } 303 }
305 } 304 }
306 305
307 TEST_F(ExternalFileURLRequestJobTest, HostedDocument) { 306 TEST_F(ExternalFileURLRequestJobTest, HostedDocument) {
308 // Open a gdoc file. 307 // Open a gdoc file.
309 test_delegate_->set_quit_on_redirect(true); 308 test_delegate_->set_quit_on_redirect(true);
310 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 309 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
311 GURL( 310 GURL(
312 "externalfile:drive-test-user-hash/root/Document 1 " 311 "externalfile:drive-test-user-hash/root/Document 1 "
313 "excludeDir-test.gdoc"), 312 "excludeDir-test.gdoc"),
314 net::DEFAULT_PRIORITY, 313 net::DEFAULT_PRIORITY, test_delegate_.get()));
315 test_delegate_.get(),
316 NULL));
317 request->Start(); 314 request->Start();
318 315
319 base::RunLoop().Run(); 316 base::RunLoop().Run();
320 317
321 EXPECT_EQ(net::URLRequestStatus::SUCCESS, request->status().status()); 318 EXPECT_EQ(net::URLRequestStatus::SUCCESS, request->status().status());
322 // Make sure that a hosted document triggers redirection. 319 // Make sure that a hosted document triggers redirection.
323 EXPECT_TRUE(request->is_redirecting()); 320 EXPECT_TRUE(request->is_redirecting());
324 EXPECT_TRUE(test_delegate_->redirect_url().is_valid()); 321 EXPECT_TRUE(test_delegate_->redirect_url().is_valid());
325 } 322 }
326 323
327 TEST_F(ExternalFileURLRequestJobTest, RootDirectory) { 324 TEST_F(ExternalFileURLRequestJobTest, RootDirectory) {
328 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 325 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
329 GURL("externalfile:drive-test-user-hash/root"), 326 GURL("externalfile:drive-test-user-hash/root"), net::DEFAULT_PRIORITY,
330 net::DEFAULT_PRIORITY, 327 test_delegate_.get()));
331 test_delegate_.get(),
332 NULL));
333 request->Start(); 328 request->Start();
334 329
335 base::RunLoop().Run(); 330 base::RunLoop().Run();
336 331
337 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status()); 332 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status());
338 EXPECT_EQ(net::ERR_FAILED, request->status().error()); 333 EXPECT_EQ(net::ERR_FAILED, request->status().error());
339 } 334 }
340 335
341 TEST_F(ExternalFileURLRequestJobTest, Directory) { 336 TEST_F(ExternalFileURLRequestJobTest, Directory) {
342 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 337 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
343 GURL("externalfile:drive-test-user-hash/root/Directory 1"), 338 GURL("externalfile:drive-test-user-hash/root/Directory 1"),
344 net::DEFAULT_PRIORITY, 339 net::DEFAULT_PRIORITY, test_delegate_.get()));
345 test_delegate_.get(),
346 NULL));
347 request->Start(); 340 request->Start();
348 341
349 base::RunLoop().Run(); 342 base::RunLoop().Run();
350 343
351 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status()); 344 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status());
352 EXPECT_EQ(net::ERR_FAILED, request->status().error()); 345 EXPECT_EQ(net::ERR_FAILED, request->status().error());
353 } 346 }
354 347
355 TEST_F(ExternalFileURLRequestJobTest, NonExistingFile) { 348 TEST_F(ExternalFileURLRequestJobTest, NonExistingFile) {
356 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 349 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
357 GURL("externalfile:drive-test-user-hash/root/non-existing-file.txt"), 350 GURL("externalfile:drive-test-user-hash/root/non-existing-file.txt"),
358 net::DEFAULT_PRIORITY, 351 net::DEFAULT_PRIORITY, test_delegate_.get()));
359 test_delegate_.get(),
360 NULL));
361 request->Start(); 352 request->Start();
362 353
363 base::RunLoop().Run(); 354 base::RunLoop().Run();
364 355
365 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status()); 356 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status());
366 EXPECT_EQ(net::ERR_FILE_NOT_FOUND, request->status().error()); 357 EXPECT_EQ(net::ERR_FILE_NOT_FOUND, request->status().error());
367 } 358 }
368 359
369 TEST_F(ExternalFileURLRequestJobTest, WrongFormat) { 360 TEST_F(ExternalFileURLRequestJobTest, WrongFormat) {
370 scoped_ptr<net::URLRequest> request( 361 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
371 url_request_context_->CreateRequest(GURL("externalfile:"), 362 GURL("externalfile:"), net::DEFAULT_PRIORITY, test_delegate_.get()));
372 net::DEFAULT_PRIORITY,
373 test_delegate_.get(),
374 NULL));
375 request->Start(); 363 request->Start();
376 364
377 base::RunLoop().Run(); 365 base::RunLoop().Run();
378 366
379 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status()); 367 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status());
380 EXPECT_EQ(net::ERR_INVALID_URL, request->status().error()); 368 EXPECT_EQ(net::ERR_INVALID_URL, request->status().error());
381 } 369 }
382 370
383 TEST_F(ExternalFileURLRequestJobTest, Cancel) { 371 TEST_F(ExternalFileURLRequestJobTest, Cancel) {
384 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 372 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
385 GURL("externalfile:drive-test-user-hash/root/File 1.txt"), 373 GURL("externalfile:drive-test-user-hash/root/File 1.txt"),
386 net::DEFAULT_PRIORITY, 374 net::DEFAULT_PRIORITY, test_delegate_.get()));
387 test_delegate_.get(),
388 NULL));
389 375
390 // Start the request, and cancel it immediately after it. 376 // Start the request, and cancel it immediately after it.
391 request->Start(); 377 request->Start();
392 request->Cancel(); 378 request->Cancel();
393 379
394 base::RunLoop().Run(); 380 base::RunLoop().Run();
395 381
396 EXPECT_EQ(net::URLRequestStatus::CANCELED, request->status().status()); 382 EXPECT_EQ(net::URLRequestStatus::CANCELED, request->status().status());
397 } 383 }
398 384
399 TEST_F(ExternalFileURLRequestJobTest, RangeHeader) { 385 TEST_F(ExternalFileURLRequestJobTest, RangeHeader) {
400 const GURL kTestUrl("externalfile:drive-test-user-hash/root/File 1.txt"); 386 const GURL kTestUrl("externalfile:drive-test-user-hash/root/File 1.txt");
401 const base::FilePath kTestFilePath("drive/root/File 1.txt"); 387 const base::FilePath kTestFilePath("drive/root/File 1.txt");
402 388
403 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 389 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
404 kTestUrl, net::DEFAULT_PRIORITY, test_delegate_.get(), NULL)); 390 kTestUrl, net::DEFAULT_PRIORITY, test_delegate_.get()));
405 391
406 // Set range header. 392 // Set range header.
407 request->SetExtraRequestHeaderByName( 393 request->SetExtraRequestHeaderByName(
408 "Range", "bytes=3-5", false /* overwrite */); 394 "Range", "bytes=3-5", false /* overwrite */);
409 request->Start(); 395 request->Start();
410 396
411 base::RunLoop().Run(); 397 base::RunLoop().Run();
412 398
413 EXPECT_EQ(net::URLRequestStatus::SUCCESS, request->status().status()); 399 EXPECT_EQ(net::URLRequestStatus::SUCCESS, request->status().status());
414 400
415 // Reading file must be done after |request| runs, otherwise 401 // Reading file must be done after |request| runs, otherwise
416 // it'll create a local cache file, and we cannot test correctly. 402 // it'll create a local cache file, and we cannot test correctly.
417 std::string expected_data; 403 std::string expected_data;
418 ASSERT_TRUE(ReadDriveFileSync(kTestFilePath, &expected_data)); 404 ASSERT_TRUE(ReadDriveFileSync(kTestFilePath, &expected_data));
419 EXPECT_EQ(expected_data.substr(3, 3), test_delegate_->data_received()); 405 EXPECT_EQ(expected_data.substr(3, 3), test_delegate_->data_received());
420 } 406 }
421 407
422 TEST_F(ExternalFileURLRequestJobTest, WrongRangeHeader) { 408 TEST_F(ExternalFileURLRequestJobTest, WrongRangeHeader) {
423 const GURL kTestUrl("externalfile:drive-test-user-hash/root/File 1.txt"); 409 const GURL kTestUrl("externalfile:drive-test-user-hash/root/File 1.txt");
424 410
425 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest( 411 scoped_ptr<net::URLRequest> request(url_request_context_->CreateRequest(
426 kTestUrl, net::DEFAULT_PRIORITY, test_delegate_.get(), NULL)); 412 kTestUrl, net::DEFAULT_PRIORITY, test_delegate_.get()));
427 413
428 // Set range header. 414 // Set range header.
429 request->SetExtraRequestHeaderByName( 415 request->SetExtraRequestHeaderByName(
430 "Range", "Wrong Range Header Value", false /* overwrite */); 416 "Range", "Wrong Range Header Value", false /* overwrite */);
431 request->Start(); 417 request->Start();
432 418
433 base::RunLoop().Run(); 419 base::RunLoop().Run();
434 420
435 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status()); 421 EXPECT_EQ(net::URLRequestStatus::FAILED, request->status().status());
436 EXPECT_EQ(net::ERR_REQUEST_RANGE_NOT_SATISFIABLE, request->status().error()); 422 EXPECT_EQ(net::ERR_REQUEST_RANGE_NOT_SATISFIABLE, request->status().error());
437 } 423 }
438 424
439 } // namespace chromeos 425 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698