| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "ppapi/tests/test_file_ref.h" | 5 #include "ppapi/tests/test_file_ref.h" |
| 6 | 6 |
| 7 #include <stdio.h> | 7 #include <stdio.h> |
| 8 | 8 |
| 9 #include <sstream> | 9 #include <sstream> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 | 291 |
| 292 std::string TestFileRef::TestMakeDirectory() { | 292 std::string TestFileRef::TestMakeDirectory() { |
| 293 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); | 293 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); |
| 294 | 294 |
| 295 // Open. | 295 // Open. |
| 296 pp::FileSystem file_system(instance_, PP_FILESYSTEMTYPE_LOCALTEMPORARY); | 296 pp::FileSystem file_system(instance_, PP_FILESYSTEMTYPE_LOCALTEMPORARY); |
| 297 callback.WaitForResult(file_system.Open(1024, callback.GetCallback())); | 297 callback.WaitForResult(file_system.Open(1024, callback.GetCallback())); |
| 298 CHECK_CALLBACK_BEHAVIOR(callback); | 298 CHECK_CALLBACK_BEHAVIOR(callback); |
| 299 ASSERT_EQ(PP_OK, callback.result()); | 299 ASSERT_EQ(PP_OK, callback.result()); |
| 300 | 300 |
| 301 // Make a directory. | 301 // MakeDirectory. |
| 302 pp::FileRef dir_ref(file_system, "/dir_make_dir"); | 302 pp::FileRef dir_ref(file_system, "/test_dir_make_directory"); |
| 303 callback.WaitForResult( | 303 callback.WaitForResult(dir_ref.MakeDirectory(callback.GetCallback())); |
| 304 dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | |
| 305 CHECK_CALLBACK_BEHAVIOR(callback); | 304 CHECK_CALLBACK_BEHAVIOR(callback); |
| 306 ASSERT_EQ(PP_OK, callback.result()); | 305 ASSERT_EQ(PP_OK, callback.result()); |
| 307 | 306 |
| 308 // Make a directory on the existing path without exclusive flag. | 307 // MakeDirectory aborted. |
| 309 callback.WaitForResult( | |
| 310 dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | |
| 311 CHECK_CALLBACK_BEHAVIOR(callback); | |
| 312 ASSERT_EQ(PP_OK, callback.result()); | |
| 313 | |
| 314 // Making a directory should be aborted. | |
| 315 int32_t rv = PP_ERROR_FAILED; | 308 int32_t rv = PP_ERROR_FAILED; |
| 316 { | 309 { |
| 317 rv = pp::FileRef(file_system, "/dir_make_dir_abort") | 310 rv = pp::FileRef(file_system, "/test_dir_make_abort") |
| 318 .MakeDirectory(PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback()); | 311 .MakeDirectory(callback.GetCallback()); |
| 319 } | 312 } |
| 320 callback.WaitForAbortResult(rv); | 313 callback.WaitForAbortResult(rv); |
| 321 CHECK_CALLBACK_BEHAVIOR(callback); | 314 CHECK_CALLBACK_BEHAVIOR(callback); |
| 322 | 315 |
| 323 // Make nested directories. | 316 // MakeDirectoryIncludingAncestors. |
| 324 dir_ref = pp::FileRef(file_system, "/dir_make_nested_dir_1/dir"); | 317 dir_ref = pp::FileRef(file_system, "/dir_make_dir_1/dir_make_dir_2"); |
| 325 callback.WaitForResult( | 318 callback.WaitForResult( |
| 326 dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_WITH_ANCESTORS, | 319 dir_ref.MakeDirectoryIncludingAncestors(callback.GetCallback())); |
| 327 callback.GetCallback())); | |
| 328 CHECK_CALLBACK_BEHAVIOR(callback); | 320 CHECK_CALLBACK_BEHAVIOR(callback); |
| 329 ASSERT_EQ(PP_OK, callback.result()); | 321 ASSERT_EQ(PP_OK, callback.result()); |
| 330 | 322 |
| 331 dir_ref = pp::FileRef(file_system, "/dir_make_nested_dir_2/dir"); | 323 // MakeDirectoryIncludingAncestors aborted. |
| 332 callback.WaitForResult( | 324 { |
| 333 dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | 325 rv = pp::FileRef(file_system, "/dir_make_abort_1/dir_make_abort_2") |
| 326 .MakeDirectoryIncludingAncestors(callback.GetCallback()); |
| 327 } |
| 328 callback.WaitForAbortResult(rv); |
| 334 CHECK_CALLBACK_BEHAVIOR(callback); | 329 CHECK_CALLBACK_BEHAVIOR(callback); |
| 335 ASSERT_EQ(PP_ERROR_FILENOTFOUND, callback.result()); | |
| 336 | 330 |
| 337 // Ensure there is no directory on the path to test exclusive cases. | 331 // MakeDirectory with nested path should fail. |
| 338 dir_ref = pp::FileRef(file_system, "/dir_make_dir_exclusive"); | 332 dir_ref = pp::FileRef(file_system, "/dir_make_dir_3/dir_make_dir_4"); |
| 339 rv = DeleteDirectoryRecursively(&dir_ref); | 333 callback.WaitForResult(dir_ref.MakeDirectory(callback.GetCallback())); |
| 340 ASSERT_TRUE(rv == PP_OK || rv == PP_ERROR_FILENOTFOUND); | |
| 341 | |
| 342 // Make a directory exclusively. | |
| 343 callback.WaitForResult( | |
| 344 dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_EXCLUSIVE, | |
| 345 callback.GetCallback())); | |
| 346 CHECK_CALLBACK_BEHAVIOR(callback); | 334 CHECK_CALLBACK_BEHAVIOR(callback); |
| 347 ASSERT_EQ(PP_OK, callback.result()); | 335 ASSERT_NE(PP_OK, callback.result()); |
| 348 | |
| 349 callback.WaitForResult( | |
| 350 dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_EXCLUSIVE, | |
| 351 callback.GetCallback())); | |
| 352 CHECK_CALLBACK_BEHAVIOR(callback); | |
| 353 ASSERT_EQ(PP_ERROR_FILEEXISTS, callback.result()); | |
| 354 | 336 |
| 355 PASS(); | 337 PASS(); |
| 356 } | 338 } |
| 357 | 339 |
| 358 std::string TestFileRef::TestQueryAndTouchFile() { | 340 std::string TestFileRef::TestQueryAndTouchFile() { |
| 359 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); | 341 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); |
| 360 pp::FileSystem file_system(instance_, PP_FILESYSTEMTYPE_LOCALTEMPORARY); | 342 pp::FileSystem file_system(instance_, PP_FILESYSTEMTYPE_LOCALTEMPORARY); |
| 361 callback.WaitForResult(file_system.Open(1024, callback.GetCallback())); | 343 callback.WaitForResult(file_system.Open(1024, callback.GetCallback())); |
| 362 CHECK_CALLBACK_BEHAVIOR(callback); | 344 CHECK_CALLBACK_BEHAVIOR(callback); |
| 363 ASSERT_EQ(PP_OK, callback.result()); | 345 ASSERT_EQ(PP_OK, callback.result()); |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 443 callback.WaitForResult( | 425 callback.WaitForResult( |
| 444 file_io.Open(file_ref, PP_FILEOPENFLAG_CREATE, callback.GetCallback())); | 426 file_io.Open(file_ref, PP_FILEOPENFLAG_CREATE, callback.GetCallback())); |
| 445 CHECK_CALLBACK_BEHAVIOR(callback); | 427 CHECK_CALLBACK_BEHAVIOR(callback); |
| 446 ASSERT_EQ(PP_OK, callback.result()); | 428 ASSERT_EQ(PP_OK, callback.result()); |
| 447 | 429 |
| 448 callback.WaitForResult(file_ref.Delete(callback.GetCallback())); | 430 callback.WaitForResult(file_ref.Delete(callback.GetCallback())); |
| 449 CHECK_CALLBACK_BEHAVIOR(callback); | 431 CHECK_CALLBACK_BEHAVIOR(callback); |
| 450 ASSERT_EQ(PP_OK, callback.result()); | 432 ASSERT_EQ(PP_OK, callback.result()); |
| 451 | 433 |
| 452 pp::FileRef dir_ref(file_system, "/dir_delete"); | 434 pp::FileRef dir_ref(file_system, "/dir_delete"); |
| 453 callback.WaitForResult(dir_ref.MakeDirectory( | 435 callback.WaitForResult(dir_ref.MakeDirectory(callback.GetCallback())); |
| 454 PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | |
| 455 CHECK_CALLBACK_BEHAVIOR(callback); | 436 CHECK_CALLBACK_BEHAVIOR(callback); |
| 456 ASSERT_EQ(PP_OK, callback.result()); | 437 ASSERT_EQ(PP_OK, callback.result()); |
| 457 | 438 |
| 458 callback.WaitForResult(dir_ref.Delete(callback.GetCallback())); | 439 callback.WaitForResult(dir_ref.Delete(callback.GetCallback())); |
| 459 CHECK_CALLBACK_BEHAVIOR(callback); | 440 CHECK_CALLBACK_BEHAVIOR(callback); |
| 460 ASSERT_EQ(PP_OK, callback.result()); | 441 ASSERT_EQ(PP_OK, callback.result()); |
| 461 | 442 |
| 462 pp::FileRef nested_dir_ref(file_system, "/dir_delete_1/dir_delete_2"); | 443 pp::FileRef nested_dir_ref(file_system, "/dir_delete_1/dir_delete_2"); |
| 463 callback.WaitForResult( | 444 callback.WaitForResult( |
| 464 nested_dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_WITH_ANCESTORS, | 445 nested_dir_ref.MakeDirectoryIncludingAncestors(callback.GetCallback())); |
| 465 callback.GetCallback())); | |
| 466 CHECK_CALLBACK_BEHAVIOR(callback); | 446 CHECK_CALLBACK_BEHAVIOR(callback); |
| 467 ASSERT_EQ(PP_OK, callback.result()); | 447 ASSERT_EQ(PP_OK, callback.result()); |
| 468 | 448 |
| 469 // Attempt to delete the parent directory (should fail; it's non-empty). | 449 // Attempt to delete the parent directory (should fail; it's non-empty). |
| 470 pp::FileRef parent_dir_ref = nested_dir_ref.GetParent(); | 450 pp::FileRef parent_dir_ref = nested_dir_ref.GetParent(); |
| 471 callback.WaitForResult(parent_dir_ref.Delete(callback.GetCallback())); | 451 callback.WaitForResult(parent_dir_ref.Delete(callback.GetCallback())); |
| 472 CHECK_CALLBACK_BEHAVIOR(callback); | 452 CHECK_CALLBACK_BEHAVIOR(callback); |
| 473 ASSERT_EQ(PP_ERROR_FAILED, callback.result()); | 453 ASSERT_EQ(PP_ERROR_FAILED, callback.result()); |
| 474 | 454 |
| 475 pp::FileRef nonexistent_file_ref(file_system, "/nonexistent_file_delete"); | 455 pp::FileRef nonexistent_file_ref(file_system, "/nonexistent_file_delete"); |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 509 CHECK_CALLBACK_BEHAVIOR(callback); | 489 CHECK_CALLBACK_BEHAVIOR(callback); |
| 510 ASSERT_EQ(PP_OK, callback.result()); | 490 ASSERT_EQ(PP_OK, callback.result()); |
| 511 | 491 |
| 512 pp::FileRef target_file_ref(file_system, "/target_file_rename"); | 492 pp::FileRef target_file_ref(file_system, "/target_file_rename"); |
| 513 callback.WaitForResult( | 493 callback.WaitForResult( |
| 514 file_ref.Rename(target_file_ref, callback.GetCallback())); | 494 file_ref.Rename(target_file_ref, callback.GetCallback())); |
| 515 CHECK_CALLBACK_BEHAVIOR(callback); | 495 CHECK_CALLBACK_BEHAVIOR(callback); |
| 516 ASSERT_EQ(PP_OK, callback.result()); | 496 ASSERT_EQ(PP_OK, callback.result()); |
| 517 | 497 |
| 518 pp::FileRef dir_ref(file_system, "/dir_rename"); | 498 pp::FileRef dir_ref(file_system, "/dir_rename"); |
| 519 callback.WaitForResult(dir_ref.MakeDirectory( | 499 callback.WaitForResult(dir_ref.MakeDirectory(callback.GetCallback())); |
| 520 PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | |
| 521 CHECK_CALLBACK_BEHAVIOR(callback); | 500 CHECK_CALLBACK_BEHAVIOR(callback); |
| 522 ASSERT_EQ(PP_OK, callback.result()); | 501 ASSERT_EQ(PP_OK, callback.result()); |
| 523 | 502 |
| 524 pp::FileRef target_dir_ref(file_system, "/target_dir_rename"); | 503 pp::FileRef target_dir_ref(file_system, "/target_dir_rename"); |
| 525 callback.WaitForResult( | 504 callback.WaitForResult( |
| 526 dir_ref.Rename(target_dir_ref, callback.GetCallback())); | 505 dir_ref.Rename(target_dir_ref, callback.GetCallback())); |
| 527 CHECK_CALLBACK_BEHAVIOR(callback); | 506 CHECK_CALLBACK_BEHAVIOR(callback); |
| 528 ASSERT_EQ(PP_OK, callback.result()); | 507 ASSERT_EQ(PP_OK, callback.result()); |
| 529 | 508 |
| 530 pp::FileRef nested_dir_ref(file_system, "/dir_rename_1/dir_rename_2"); | 509 pp::FileRef nested_dir_ref(file_system, "/dir_rename_1/dir_rename_2"); |
| 531 callback.WaitForResult( | 510 callback.WaitForResult( |
| 532 nested_dir_ref.MakeDirectory(PP_MAKEDIRECTORYFLAG_WITH_ANCESTORS, | 511 nested_dir_ref.MakeDirectoryIncludingAncestors(callback.GetCallback())); |
| 533 callback.GetCallback())); | |
| 534 CHECK_CALLBACK_BEHAVIOR(callback); | 512 CHECK_CALLBACK_BEHAVIOR(callback); |
| 535 ASSERT_EQ(PP_OK, callback.result()); | 513 ASSERT_EQ(PP_OK, callback.result()); |
| 536 | 514 |
| 537 // Try to rename nested directory to the parent name. Should fail. | 515 // Try to rename nested directory to the parent name. Should fail. |
| 538 pp::FileRef target_nested_dir_ref(file_system, "/dir_rename_1"); | 516 pp::FileRef target_nested_dir_ref(file_system, "/dir_rename_1"); |
| 539 callback.WaitForResult( | 517 callback.WaitForResult( |
| 540 nested_dir_ref.Rename(target_nested_dir_ref, callback.GetCallback())); | 518 nested_dir_ref.Rename(target_nested_dir_ref, callback.GetCallback())); |
| 541 CHECK_CALLBACK_BEHAVIOR(callback); | 519 CHECK_CALLBACK_BEHAVIOR(callback); |
| 542 ASSERT_EQ(PP_ERROR_FAILED, callback.result()); | 520 ASSERT_EQ(PP_ERROR_FAILED, callback.result()); |
| 543 | 521 |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 630 std::string TestFileRef::TestFileNameEscaping() { | 608 std::string TestFileRef::TestFileNameEscaping() { |
| 631 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); | 609 TestCompletionCallback callback(instance_->pp_instance(), callback_type()); |
| 632 pp::FileSystem file_system(instance_, PP_FILESYSTEMTYPE_LOCALTEMPORARY); | 610 pp::FileSystem file_system(instance_, PP_FILESYSTEMTYPE_LOCALTEMPORARY); |
| 633 callback.WaitForResult(file_system.Open(1024, callback.GetCallback())); | 611 callback.WaitForResult(file_system.Open(1024, callback.GetCallback())); |
| 634 CHECK_CALLBACK_BEHAVIOR(callback); | 612 CHECK_CALLBACK_BEHAVIOR(callback); |
| 635 ASSERT_EQ(PP_OK, callback.result()); | 613 ASSERT_EQ(PP_OK, callback.result()); |
| 636 | 614 |
| 637 std::string test_dir_path = "/dir_for_escaping_test"; | 615 std::string test_dir_path = "/dir_for_escaping_test"; |
| 638 // Create a directory in which to test. | 616 // Create a directory in which to test. |
| 639 pp::FileRef test_dir_ref(file_system, test_dir_path.c_str()); | 617 pp::FileRef test_dir_ref(file_system, test_dir_path.c_str()); |
| 640 callback.WaitForResult(test_dir_ref.MakeDirectory( | 618 callback.WaitForResult(test_dir_ref.MakeDirectory(callback.GetCallback())); |
| 641 PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | |
| 642 CHECK_CALLBACK_BEHAVIOR(callback); | 619 CHECK_CALLBACK_BEHAVIOR(callback); |
| 643 ASSERT_EQ(PP_OK, callback.result()); | 620 ASSERT_EQ(PP_OK, callback.result()); |
| 644 | 621 |
| 645 // Create the file with the terrible name. | 622 // Create the file with the terrible name. |
| 646 std::string full_file_path = test_dir_path + "/" + kTerribleName; | 623 std::string full_file_path = test_dir_path + "/" + kTerribleName; |
| 647 pp::FileRef file_ref(file_system, full_file_path.c_str()); | 624 pp::FileRef file_ref(file_system, full_file_path.c_str()); |
| 648 pp::FileIO file_io(instance_); | 625 pp::FileIO file_io(instance_); |
| 649 callback.WaitForResult( | 626 callback.WaitForResult( |
| 650 file_io.Open(file_ref, PP_FILEOPENFLAG_CREATE, callback.GetCallback())); | 627 file_io.Open(file_ref, PP_FILEOPENFLAG_CREATE, callback.GetCallback())); |
| 651 CHECK_CALLBACK_BEHAVIOR(callback); | 628 CHECK_CALLBACK_BEHAVIOR(callback); |
| (...skipping 27 matching lines...) Expand all Loading... |
| 679 | 656 |
| 680 // Setup testing directories and files. | 657 // Setup testing directories and files. |
| 681 const char* test_dir_name = "/test_get_next_file"; | 658 const char* test_dir_name = "/test_get_next_file"; |
| 682 const char* file_prefix = "file_"; | 659 const char* file_prefix = "file_"; |
| 683 const char* dir_prefix = "dir_"; | 660 const char* dir_prefix = "dir_"; |
| 684 | 661 |
| 685 pp::FileRef test_dir(file_system, test_dir_name); | 662 pp::FileRef test_dir(file_system, test_dir_name); |
| 686 int32_t rv = DeleteDirectoryRecursively(&test_dir); | 663 int32_t rv = DeleteDirectoryRecursively(&test_dir); |
| 687 ASSERT_TRUE(rv == PP_OK || rv == PP_ERROR_FILENOTFOUND); | 664 ASSERT_TRUE(rv == PP_OK || rv == PP_ERROR_FILENOTFOUND); |
| 688 | 665 |
| 689 callback.WaitForResult(test_dir.MakeDirectory( | 666 callback.WaitForResult(test_dir.MakeDirectory(callback.GetCallback())); |
| 690 PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | |
| 691 CHECK_CALLBACK_BEHAVIOR(callback); | 667 CHECK_CALLBACK_BEHAVIOR(callback); |
| 692 ASSERT_EQ(PP_OK, callback.result()); | 668 ASSERT_EQ(PP_OK, callback.result()); |
| 693 | 669 |
| 694 static const int kNumFiles = 3; | 670 static const int kNumFiles = 3; |
| 695 std::set<std::string> expected_file_names; | 671 std::set<std::string> expected_file_names; |
| 696 for (int i = 1; i <= kNumFiles; ++i) { | 672 for (int i = 1; i <= kNumFiles; ++i) { |
| 697 std::ostringstream buffer; | 673 std::ostringstream buffer; |
| 698 buffer << test_dir_name << '/' << file_prefix << i; | 674 buffer << test_dir_name << '/' << file_prefix << i; |
| 699 pp::FileRef file_ref(file_system, buffer.str().c_str()); | 675 pp::FileRef file_ref(file_system, buffer.str().c_str()); |
| 700 | 676 |
| 701 pp::FileIO file_io(instance_); | 677 pp::FileIO file_io(instance_); |
| 702 callback.WaitForResult( | 678 callback.WaitForResult( |
| 703 file_io.Open(file_ref, PP_FILEOPENFLAG_CREATE, callback.GetCallback())); | 679 file_io.Open(file_ref, PP_FILEOPENFLAG_CREATE, callback.GetCallback())); |
| 704 CHECK_CALLBACK_BEHAVIOR(callback); | 680 CHECK_CALLBACK_BEHAVIOR(callback); |
| 705 ASSERT_EQ(PP_OK, callback.result()); | 681 ASSERT_EQ(PP_OK, callback.result()); |
| 706 | 682 |
| 707 expected_file_names.insert(buffer.str()); | 683 expected_file_names.insert(buffer.str()); |
| 708 } | 684 } |
| 709 | 685 |
| 710 static const int kNumDirectories = 3; | 686 static const int kNumDirectories = 3; |
| 711 std::set<std::string> expected_dir_names; | 687 std::set<std::string> expected_dir_names; |
| 712 for (int i = 1; i <= kNumDirectories; ++i) { | 688 for (int i = 1; i <= kNumDirectories; ++i) { |
| 713 std::ostringstream buffer; | 689 std::ostringstream buffer; |
| 714 buffer << test_dir_name << '/' << dir_prefix << i; | 690 buffer << test_dir_name << '/' << dir_prefix << i; |
| 715 pp::FileRef file_ref(file_system, buffer.str().c_str()); | 691 pp::FileRef file_ref(file_system, buffer.str().c_str()); |
| 716 | 692 |
| 717 callback.WaitForResult(file_ref.MakeDirectory( | 693 callback.WaitForResult(file_ref.MakeDirectory(callback.GetCallback())); |
| 718 PP_MAKEDIRECTORYFLAG_NONE, callback.GetCallback())); | |
| 719 CHECK_CALLBACK_BEHAVIOR(callback); | 694 CHECK_CALLBACK_BEHAVIOR(callback); |
| 720 ASSERT_EQ(PP_OK, callback.result()); | 695 ASSERT_EQ(PP_OK, callback.result()); |
| 721 | 696 |
| 722 expected_dir_names.insert(buffer.str()); | 697 expected_dir_names.insert(buffer.str()); |
| 723 } | 698 } |
| 724 | 699 |
| 725 // Test that |ReadDirectoryEntries()| is able to fetch all | 700 // Test that |ReadDirectoryEntries()| is able to fetch all |
| 726 // directories and files that we created. | 701 // directories and files that we created. |
| 727 { | 702 { |
| 728 TestCompletionCallbackWithOutput<DirEntries> output_callback( | 703 TestCompletionCallbackWithOutput<DirEntries> output_callback( |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 766 { | 741 { |
| 767 rv = pp::FileRef(file_system, test_dir_name) | 742 rv = pp::FileRef(file_system, test_dir_name) |
| 768 .ReadDirectoryEntries(output_callback.GetCallback()); | 743 .ReadDirectoryEntries(output_callback.GetCallback()); |
| 769 } | 744 } |
| 770 output_callback.WaitForAbortResult(rv); | 745 output_callback.WaitForAbortResult(rv); |
| 771 CHECK_CALLBACK_BEHAVIOR(output_callback); | 746 CHECK_CALLBACK_BEHAVIOR(output_callback); |
| 772 | 747 |
| 773 | 748 |
| 774 PASS(); | 749 PASS(); |
| 775 } | 750 } |
| OLD | NEW |