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

Side by Side Diff: webkit/blob/blob_url_request_job_unittest.cc

Issue 11275088: Remove implicit scoped_refptr operator T* Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 8 years, 1 month 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
« no previous file with comments | « webkit/blob/blob_url_request_job.cc ('k') | webkit/blob/local_file_stream_reader.cc » ('j') | 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) 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/file_path.h" 6 #include "base/file_path.h"
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "base/memory/ref_counted.h" 8 #include "base/memory/ref_counted.h"
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 void WriteFileSystemFile(const std::string& filename, 194 void WriteFileSystemFile(const std::string& filename,
195 const char* buf, int buf_size, 195 const char* buf, int buf_size,
196 base::Time* modification_time) { 196 base::Time* modification_time) {
197 fileapi::FileSystemURL url(GURL(kFileSystemURLOrigin), 197 fileapi::FileSystemURL url(GURL(kFileSystemURLOrigin),
198 kFileSystemType, 198 kFileSystemType,
199 FilePath().AppendASCII(filename)); 199 FilePath().AppendASCII(filename));
200 200
201 fileapi::FileSystemFileUtil* file_util = 201 fileapi::FileSystemFileUtil* file_util =
202 file_system_context_->GetFileUtil(kFileSystemType); 202 file_system_context_->GetFileUtil(kFileSystemType);
203 203
204 fileapi::FileSystemOperationContext context(file_system_context_); 204 fileapi::FileSystemOperationContext context(file_system_context_.get());
205 context.set_allowed_bytes_growth(1024); 205 context.set_allowed_bytes_growth(1024);
206 206
207 base::PlatformFile handle = base::kInvalidPlatformFileValue; 207 base::PlatformFile handle = base::kInvalidPlatformFileValue;
208 bool created = false; 208 bool created = false;
209 ASSERT_EQ(base::PLATFORM_FILE_OK, file_util->CreateOrOpen( 209 ASSERT_EQ(base::PLATFORM_FILE_OK, file_util->CreateOrOpen(
210 &context, 210 &context,
211 url, 211 url,
212 base::PLATFORM_FILE_CREATE | base::PLATFORM_FILE_WRITE, 212 base::PLATFORM_FILE_CREATE | base::PLATFORM_FILE_WRITE,
213 &handle, 213 &handle,
214 &created)); 214 &created));
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 BlobData* blob_data) { 254 BlobData* blob_data) {
255 MockURLRequestDelegate url_request_delegate; 255 MockURLRequestDelegate url_request_delegate;
256 256
257 request_.reset(empty_context_.CreateRequest( 257 request_.reset(empty_context_.CreateRequest(
258 GURL("blob:blah"), &url_request_delegate)); 258 GURL("blob:blah"), &url_request_delegate));
259 request_->set_method(method); 259 request_->set_method(method);
260 blob_url_request_job_ = new BlobURLRequestJob( 260 blob_url_request_job_ = new BlobURLRequestJob(
261 request_.get(), 261 request_.get(),
262 empty_context_.network_delegate(), 262 empty_context_.network_delegate(),
263 blob_data, 263 blob_data,
264 file_system_context_, 264 file_system_context_.get(),
265 base::MessageLoopProxy::current()); 265 base::MessageLoopProxy::current().get());
266 266
267 // Start the request. 267 // Start the request.
268 if (!extra_headers.IsEmpty()) 268 if (!extra_headers.IsEmpty())
269 request_->SetExtraRequestHeaders(extra_headers); 269 request_->SetExtraRequestHeaders(extra_headers);
270 request_->Start(); 270 request_->Start();
271 271
272 MessageLoop::current()->Run(); 272 MessageLoop::current()->Run();
273 273
274 // Verify response. 274 // Verify response.
275 EXPECT_TRUE(request_->status().is_success()); 275 EXPECT_TRUE(request_->status().is_success());
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
318 int expected_status_code_; 318 int expected_status_code_;
319 std::string expected_response_; 319 std::string expected_response_;
320 }; 320 };
321 321
322 // static 322 // static
323 BlobURLRequestJob* BlobURLRequestJobTest::blob_url_request_job_ = NULL; 323 BlobURLRequestJob* BlobURLRequestJobTest::blob_url_request_job_ = NULL;
324 324
325 TEST_F(BlobURLRequestJobTest, TestGetSimpleDataRequest) { 325 TEST_F(BlobURLRequestJobTest, TestGetSimpleDataRequest) {
326 scoped_refptr<BlobData> blob_data(new BlobData()); 326 scoped_refptr<BlobData> blob_data(new BlobData());
327 blob_data->AppendData(kTestData1); 327 blob_data->AppendData(kTestData1);
328 TestSuccessRequest(blob_data, kTestData1); 328 TestSuccessRequest(blob_data.get(), kTestData1);
329 } 329 }
330 330
331 TEST_F(BlobURLRequestJobTest, TestGetSimpleFileRequest) { 331 TEST_F(BlobURLRequestJobTest, TestGetSimpleFileRequest) {
332 scoped_refptr<BlobData> blob_data(new BlobData()); 332 scoped_refptr<BlobData> blob_data(new BlobData());
333 blob_data->AppendFile(temp_file1_, 0, -1, base::Time()); 333 blob_data->AppendFile(temp_file1_, 0, -1, base::Time());
334 TestSuccessRequest(blob_data, kTestFileData1); 334 TestSuccessRequest(blob_data.get(), kTestFileData1);
335 } 335 }
336 336
337 TEST_F(BlobURLRequestJobTest, TestGetLargeFileRequest) { 337 TEST_F(BlobURLRequestJobTest, TestGetLargeFileRequest) {
338 scoped_refptr<BlobData> blob_data(new BlobData()); 338 scoped_refptr<BlobData> blob_data(new BlobData());
339 FilePath large_temp_file = temp_dir_.path().AppendASCII("LargeBlob.dat"); 339 FilePath large_temp_file = temp_dir_.path().AppendASCII("LargeBlob.dat");
340 std::string large_data; 340 std::string large_data;
341 large_data.reserve(kBufferSize * 5); 341 large_data.reserve(kBufferSize * 5);
342 for (int i = 0; i < kBufferSize * 5; ++i) 342 for (int i = 0; i < kBufferSize * 5; ++i)
343 large_data.append(1, static_cast<char>(i % 256)); 343 large_data.append(1, static_cast<char>(i % 256));
344 ASSERT_EQ(static_cast<int>(large_data.size()), 344 ASSERT_EQ(static_cast<int>(large_data.size()),
345 file_util::WriteFile(large_temp_file, large_data.data(), 345 file_util::WriteFile(large_temp_file, large_data.data(),
346 large_data.size())); 346 large_data.size()));
347 blob_data->AppendFile(large_temp_file, 0, -1, base::Time()); 347 blob_data->AppendFile(large_temp_file, 0, -1, base::Time());
348 TestSuccessRequest(blob_data, large_data); 348 TestSuccessRequest(blob_data.get(), large_data);
349 } 349 }
350 350
351 TEST_F(BlobURLRequestJobTest, TestGetNonExistentFileRequest) { 351 TEST_F(BlobURLRequestJobTest, TestGetNonExistentFileRequest) {
352 FilePath non_existent_file = 352 FilePath non_existent_file =
353 temp_file1_.InsertBeforeExtension(FILE_PATH_LITERAL("-na")); 353 temp_file1_.InsertBeforeExtension(FILE_PATH_LITERAL("-na"));
354 scoped_refptr<BlobData> blob_data(new BlobData()); 354 scoped_refptr<BlobData> blob_data(new BlobData());
355 blob_data->AppendFile(non_existent_file, 0, -1, base::Time()); 355 blob_data->AppendFile(non_existent_file, 0, -1, base::Time());
356 TestErrorRequest(blob_data, 404); 356 TestErrorRequest(blob_data.get(), 404);
357 } 357 }
358 358
359 TEST_F(BlobURLRequestJobTest, TestGetChangedFileRequest) { 359 TEST_F(BlobURLRequestJobTest, TestGetChangedFileRequest) {
360 scoped_refptr<BlobData> blob_data(new BlobData()); 360 scoped_refptr<BlobData> blob_data(new BlobData());
361 base::Time old_time = 361 base::Time old_time =
362 temp_file_modification_time1_ - base::TimeDelta::FromSeconds(10); 362 temp_file_modification_time1_ - base::TimeDelta::FromSeconds(10);
363 blob_data->AppendFile(temp_file1_, 0, 3, old_time); 363 blob_data->AppendFile(temp_file1_, 0, 3, old_time);
364 TestErrorRequest(blob_data, 404); 364 TestErrorRequest(blob_data.get(), 404);
365 } 365 }
366 366
367 TEST_F(BlobURLRequestJobTest, TestGetSlicedFileRequest) { 367 TEST_F(BlobURLRequestJobTest, TestGetSlicedFileRequest) {
368 scoped_refptr<BlobData> blob_data(new BlobData()); 368 scoped_refptr<BlobData> blob_data(new BlobData());
369 blob_data->AppendFile(temp_file1_, 2, 4, temp_file_modification_time1_); 369 blob_data->AppendFile(temp_file1_, 2, 4, temp_file_modification_time1_);
370 std::string result(kTestFileData1 + 2, 4); 370 std::string result(kTestFileData1 + 2, 4);
371 TestSuccessRequest(blob_data, result); 371 TestSuccessRequest(blob_data.get(), result);
372 } 372 }
373 373
374 TEST_F(BlobURLRequestJobTest, TestGetSimpleFileSystemFileRequest) { 374 TEST_F(BlobURLRequestJobTest, TestGetSimpleFileSystemFileRequest) {
375 SetUpFileSystem(); 375 SetUpFileSystem();
376 scoped_refptr<BlobData> blob_data(new BlobData()); 376 scoped_refptr<BlobData> blob_data(new BlobData());
377 blob_data->AppendFileSystemFile(temp_file_system_file1_, 0, -1, 377 blob_data->AppendFileSystemFile(temp_file_system_file1_, 0, -1,
378 base::Time()); 378 base::Time());
379 TestSuccessRequest(blob_data, kTestFileSystemFileData1); 379 TestSuccessRequest(blob_data.get(), kTestFileSystemFileData1);
380 } 380 }
381 381
382 TEST_F(BlobURLRequestJobTest, TestGetLargeFileSystemFileRequest) { 382 TEST_F(BlobURLRequestJobTest, TestGetLargeFileSystemFileRequest) {
383 SetUpFileSystem(); 383 SetUpFileSystem();
384 std::string large_data; 384 std::string large_data;
385 large_data.reserve(kBufferSize * 5); 385 large_data.reserve(kBufferSize * 5);
386 for (int i = 0; i < kBufferSize * 5; ++i) 386 for (int i = 0; i < kBufferSize * 5; ++i)
387 large_data.append(1, static_cast<char>(i % 256)); 387 large_data.append(1, static_cast<char>(i % 256));
388 388
389 const char kFilename[] = "LargeBlob.dat"; 389 const char kFilename[] = "LargeBlob.dat";
390 WriteFileSystemFile(kFilename, large_data.data(), large_data.size(), NULL); 390 WriteFileSystemFile(kFilename, large_data.data(), large_data.size(), NULL);
391 391
392 scoped_refptr<BlobData> blob_data(new BlobData()); 392 scoped_refptr<BlobData> blob_data(new BlobData());
393 blob_data->AppendFileSystemFile(GetFileSystemURL(kFilename), 393 blob_data->AppendFileSystemFile(GetFileSystemURL(kFilename),
394 0, -1, base::Time()); 394 0, -1, base::Time());
395 TestSuccessRequest(blob_data, large_data); 395 TestSuccessRequest(blob_data.get(), large_data);
396 } 396 }
397 397
398 TEST_F(BlobURLRequestJobTest, TestGetNonExistentFileSystemFileRequest) { 398 TEST_F(BlobURLRequestJobTest, TestGetNonExistentFileSystemFileRequest) {
399 SetUpFileSystem(); 399 SetUpFileSystem();
400 GURL non_existent_file = GetFileSystemURL("non-existent.dat"); 400 GURL non_existent_file = GetFileSystemURL("non-existent.dat");
401 scoped_refptr<BlobData> blob_data(new BlobData()); 401 scoped_refptr<BlobData> blob_data(new BlobData());
402 blob_data->AppendFileSystemFile(non_existent_file, 0, -1, base::Time()); 402 blob_data->AppendFileSystemFile(non_existent_file, 0, -1, base::Time());
403 TestErrorRequest(blob_data, 404); 403 TestErrorRequest(blob_data.get(), 404);
404 } 404 }
405 405
406 TEST_F(BlobURLRequestJobTest, TestGetChangedFileSystemFileRequest) { 406 TEST_F(BlobURLRequestJobTest, TestGetChangedFileSystemFileRequest) {
407 SetUpFileSystem(); 407 SetUpFileSystem();
408 scoped_refptr<BlobData> blob_data(new BlobData()); 408 scoped_refptr<BlobData> blob_data(new BlobData());
409 base::Time old_time = 409 base::Time old_time =
410 temp_file_system_file_modification_time1_ - 410 temp_file_system_file_modification_time1_ -
411 base::TimeDelta::FromSeconds(10); 411 base::TimeDelta::FromSeconds(10);
412 blob_data->AppendFileSystemFile(temp_file_system_file1_, 0, 3, old_time); 412 blob_data->AppendFileSystemFile(temp_file_system_file1_, 0, 3, old_time);
413 TestErrorRequest(blob_data, 404); 413 TestErrorRequest(blob_data.get(), 404);
414 } 414 }
415 415
416 TEST_F(BlobURLRequestJobTest, TestGetSlicedFileSystemFileRequest) { 416 TEST_F(BlobURLRequestJobTest, TestGetSlicedFileSystemFileRequest) {
417 SetUpFileSystem(); 417 SetUpFileSystem();
418 scoped_refptr<BlobData> blob_data(new BlobData()); 418 scoped_refptr<BlobData> blob_data(new BlobData());
419 blob_data->AppendFileSystemFile(temp_file_system_file1_, 2, 4, 419 blob_data->AppendFileSystemFile(temp_file_system_file1_, 2, 4,
420 temp_file_system_file_modification_time1_); 420 temp_file_system_file_modification_time1_);
421 std::string result(kTestFileSystemFileData1 + 2, 4); 421 std::string result(kTestFileSystemFileData1 + 2, 4);
422 TestSuccessRequest(blob_data, result); 422 TestSuccessRequest(blob_data.get(), result);
423 } 423 }
424 424
425 TEST_F(BlobURLRequestJobTest, TestGetComplicatedDataAndFileRequest) { 425 TEST_F(BlobURLRequestJobTest, TestGetComplicatedDataAndFileRequest) {
426 SetUpFileSystem(); 426 SetUpFileSystem();
427 std::string result; 427 std::string result;
428 scoped_refptr<BlobData> blob_data = BuildComplicatedData(&result); 428 scoped_refptr<BlobData> blob_data = BuildComplicatedData(&result);
429 TestSuccessRequest(blob_data, result); 429 TestSuccessRequest(blob_data.get(), result);
430 } 430 }
431 431
432 TEST_F(BlobURLRequestJobTest, TestGetRangeRequest1) { 432 TEST_F(BlobURLRequestJobTest, TestGetRangeRequest1) {
433 SetUpFileSystem(); 433 SetUpFileSystem();
434 std::string result; 434 std::string result;
435 scoped_refptr<BlobData> blob_data = BuildComplicatedData(&result); 435 scoped_refptr<BlobData> blob_data = BuildComplicatedData(&result);
436 net::HttpRequestHeaders extra_headers; 436 net::HttpRequestHeaders extra_headers;
437 extra_headers.SetHeader(net::HttpRequestHeaders::kRange, "bytes=5-10"); 437 extra_headers.SetHeader(net::HttpRequestHeaders::kRange, "bytes=5-10");
438 expected_status_code_ = 206; 438 expected_status_code_ = 206;
439 expected_response_ = result.substr(5, 10 - 5 + 1); 439 expected_response_ = result.substr(5, 10 - 5 + 1);
440 TestRequest("GET", extra_headers, blob_data); 440 TestRequest("GET", extra_headers, blob_data.get());
441 } 441 }
442 442
443 TEST_F(BlobURLRequestJobTest, TestGetRangeRequest2) { 443 TEST_F(BlobURLRequestJobTest, TestGetRangeRequest2) {
444 SetUpFileSystem(); 444 SetUpFileSystem();
445 std::string result; 445 std::string result;
446 scoped_refptr<BlobData> blob_data = BuildComplicatedData(&result); 446 scoped_refptr<BlobData> blob_data = BuildComplicatedData(&result);
447 net::HttpRequestHeaders extra_headers; 447 net::HttpRequestHeaders extra_headers;
448 extra_headers.SetHeader(net::HttpRequestHeaders::kRange, "bytes=-10"); 448 extra_headers.SetHeader(net::HttpRequestHeaders::kRange, "bytes=-10");
449 expected_status_code_ = 206; 449 expected_status_code_ = 206;
450 expected_response_ = result.substr(result.length() - 10); 450 expected_response_ = result.substr(result.length() - 10);
451 TestRequest("GET", extra_headers, blob_data); 451 TestRequest("GET", extra_headers, blob_data.get());
452 } 452 }
453 453
454 TEST_F(BlobURLRequestJobTest, TestExtraHeaders) { 454 TEST_F(BlobURLRequestJobTest, TestExtraHeaders) {
455 scoped_refptr<BlobData> blob_data(new BlobData()); 455 scoped_refptr<BlobData> blob_data(new BlobData());
456 blob_data->set_content_type(kTestContentType); 456 blob_data->set_content_type(kTestContentType);
457 blob_data->set_content_disposition(kTestContentDisposition); 457 blob_data->set_content_disposition(kTestContentDisposition);
458 blob_data->AppendData(kTestData1); 458 blob_data->AppendData(kTestData1);
459 expected_status_code_ = 200; 459 expected_status_code_ = 200;
460 expected_response_ = kTestData1; 460 expected_response_ = kTestData1;
461 TestRequest("GET", net::HttpRequestHeaders(), blob_data); 461 TestRequest("GET", net::HttpRequestHeaders(), blob_data.get());
462 462
463 std::string content_type; 463 std::string content_type;
464 EXPECT_TRUE(request_->response_headers()->GetMimeType(&content_type)); 464 EXPECT_TRUE(request_->response_headers()->GetMimeType(&content_type));
465 EXPECT_STREQ(content_type.c_str(), kTestContentType); 465 EXPECT_STREQ(content_type.c_str(), kTestContentType);
466 void* iter = NULL; 466 void* iter = NULL;
467 std::string content_disposition; 467 std::string content_disposition;
468 EXPECT_TRUE(request_->response_headers()->EnumerateHeader( 468 EXPECT_TRUE(request_->response_headers()->EnumerateHeader(
469 &iter, "Content-Disposition", &content_disposition)); 469 &iter, "Content-Disposition", &content_disposition));
470 EXPECT_STREQ(content_disposition.c_str(), kTestContentDisposition); 470 EXPECT_STREQ(content_disposition.c_str(), kTestContentDisposition);
471 } 471 }
472 472
473 } // namespace webkit_blob 473 } // namespace webkit_blob
OLDNEW
« no previous file with comments | « webkit/blob/blob_url_request_job.cc ('k') | webkit/blob/local_file_stream_reader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698