| OLD | NEW |
| 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/sync_file_system/local/local_file_sync_context.h" | 5 #include "chrome/browser/sync_file_system/local/local_file_sync_context.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 227 base::Bind(&base::DoNothing)); | 227 base::Bind(&base::DoNothing)); |
| 228 } | 228 } |
| 229 } | 229 } |
| 230 | 230 |
| 231 void PrepareForSync_Basic(LocalFileSyncContext::SyncMode sync_mode, | 231 void PrepareForSync_Basic(LocalFileSyncContext::SyncMode sync_mode, |
| 232 SyncStatusCode simulate_sync_finish_status) { | 232 SyncStatusCode simulate_sync_finish_status) { |
| 233 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 233 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 234 in_memory_env_.get(), | 234 in_memory_env_.get(), |
| 235 io_task_runner_.get(), | 235 io_task_runner_.get(), |
| 236 file_task_runner_.get()); | 236 file_task_runner_.get()); |
| 237 file_system.SetUp(); | 237 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 238 sync_context_ = new LocalFileSyncContext( | 238 sync_context_ = new LocalFileSyncContext( |
| 239 dir_.path(), in_memory_env_.get(), | 239 dir_.path(), in_memory_env_.get(), |
| 240 ui_task_runner_.get(), io_task_runner_.get()); | 240 ui_task_runner_.get(), io_task_runner_.get()); |
| 241 ASSERT_EQ(SYNC_STATUS_OK, | 241 ASSERT_EQ(SYNC_STATUS_OK, |
| 242 file_system.MaybeInitializeFileSystemContext( | 242 file_system.MaybeInitializeFileSystemContext( |
| 243 sync_context_.get())); | 243 sync_context_.get())); |
| 244 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); | 244 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); |
| 245 | 245 |
| 246 const FileSystemURL kFile(file_system.URL("file")); | 246 const FileSystemURL kFile(file_system.URL("file")); |
| 247 EXPECT_EQ(base::File::FILE_OK, file_system.CreateFile(kFile)); | 247 EXPECT_EQ(base::File::FILE_OK, file_system.CreateFile(kFile)); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 279 | 279 |
| 280 file_system.TearDown(); | 280 file_system.TearDown(); |
| 281 } | 281 } |
| 282 | 282 |
| 283 void PrepareForSync_WriteDuringSync( | 283 void PrepareForSync_WriteDuringSync( |
| 284 LocalFileSyncContext::SyncMode sync_mode) { | 284 LocalFileSyncContext::SyncMode sync_mode) { |
| 285 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 285 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 286 in_memory_env_.get(), | 286 in_memory_env_.get(), |
| 287 io_task_runner_.get(), | 287 io_task_runner_.get(), |
| 288 file_task_runner_.get()); | 288 file_task_runner_.get()); |
| 289 file_system.SetUp(); | 289 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 290 sync_context_ = new LocalFileSyncContext( | 290 sync_context_ = new LocalFileSyncContext( |
| 291 dir_.path(), in_memory_env_.get(), | 291 dir_.path(), in_memory_env_.get(), |
| 292 ui_task_runner_.get(), io_task_runner_.get()); | 292 ui_task_runner_.get(), io_task_runner_.get()); |
| 293 ASSERT_EQ(SYNC_STATUS_OK, | 293 ASSERT_EQ(SYNC_STATUS_OK, |
| 294 file_system.MaybeInitializeFileSystemContext( | 294 file_system.MaybeInitializeFileSystemContext( |
| 295 sync_context_.get())); | 295 sync_context_.get())); |
| 296 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); | 296 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); |
| 297 | 297 |
| 298 const FileSystemURL kFile(file_system.URL("file")); | 298 const FileSystemURL kFile(file_system.URL("file")); |
| 299 EXPECT_EQ(base::File::FILE_OK, file_system.CreateFile(kFile)); | 299 EXPECT_EQ(base::File::FILE_OK, file_system.CreateFile(kFile)); |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 371 dir_.path(), in_memory_env_.get(), | 371 dir_.path(), in_memory_env_.get(), |
| 372 ui_task_runner_.get(), io_task_runner_.get()); | 372 ui_task_runner_.get(), io_task_runner_.get()); |
| 373 sync_context_->ShutdownOnUIThread(); | 373 sync_context_->ShutdownOnUIThread(); |
| 374 } | 374 } |
| 375 | 375 |
| 376 TEST_F(LocalFileSyncContextTest, InitializeFileSystemContext) { | 376 TEST_F(LocalFileSyncContextTest, InitializeFileSystemContext) { |
| 377 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 377 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 378 in_memory_env_.get(), | 378 in_memory_env_.get(), |
| 379 io_task_runner_.get(), | 379 io_task_runner_.get(), |
| 380 file_task_runner_.get()); | 380 file_task_runner_.get()); |
| 381 file_system.SetUp(); | 381 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 382 | 382 |
| 383 sync_context_ = new LocalFileSyncContext( | 383 sync_context_ = new LocalFileSyncContext( |
| 384 dir_.path(), in_memory_env_.get(), | 384 dir_.path(), in_memory_env_.get(), |
| 385 ui_task_runner_.get(), io_task_runner_.get()); | 385 ui_task_runner_.get(), io_task_runner_.get()); |
| 386 | 386 |
| 387 // Initializes file_system using |sync_context_|. | 387 // Initializes file_system using |sync_context_|. |
| 388 EXPECT_EQ(SYNC_STATUS_OK, | 388 EXPECT_EQ(SYNC_STATUS_OK, |
| 389 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); | 389 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); |
| 390 | 390 |
| 391 // Make sure everything's set up for file_system to be able to handle | 391 // Make sure everything's set up for file_system to be able to handle |
| (...skipping 26 matching lines...) Expand all Loading... |
| 418 | 418 |
| 419 TEST_F(LocalFileSyncContextTest, MultipleFileSystemContexts) { | 419 TEST_F(LocalFileSyncContextTest, MultipleFileSystemContexts) { |
| 420 CannedSyncableFileSystem file_system1(GURL(kOrigin1), | 420 CannedSyncableFileSystem file_system1(GURL(kOrigin1), |
| 421 in_memory_env_.get(), | 421 in_memory_env_.get(), |
| 422 io_task_runner_.get(), | 422 io_task_runner_.get(), |
| 423 file_task_runner_.get()); | 423 file_task_runner_.get()); |
| 424 CannedSyncableFileSystem file_system2(GURL(kOrigin2), | 424 CannedSyncableFileSystem file_system2(GURL(kOrigin2), |
| 425 in_memory_env_.get(), | 425 in_memory_env_.get(), |
| 426 io_task_runner_.get(), | 426 io_task_runner_.get(), |
| 427 file_task_runner_.get()); | 427 file_task_runner_.get()); |
| 428 file_system1.SetUp(); | 428 file_system1.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 429 file_system2.SetUp(); | 429 file_system2.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 430 | 430 |
| 431 sync_context_ = new LocalFileSyncContext( | 431 sync_context_ = new LocalFileSyncContext( |
| 432 dir_.path(), in_memory_env_.get(), | 432 dir_.path(), in_memory_env_.get(), |
| 433 ui_task_runner_.get(), io_task_runner_.get()); | 433 ui_task_runner_.get(), io_task_runner_.get()); |
| 434 | 434 |
| 435 // Initializes file_system1 and file_system2. | 435 // Initializes file_system1 and file_system2. |
| 436 EXPECT_EQ(SYNC_STATUS_OK, | 436 EXPECT_EQ(SYNC_STATUS_OK, |
| 437 file_system1.MaybeInitializeFileSystemContext(sync_context_.get())); | 437 file_system1.MaybeInitializeFileSystemContext(sync_context_.get())); |
| 438 EXPECT_EQ(SYNC_STATUS_OK, | 438 EXPECT_EQ(SYNC_STATUS_OK, |
| 439 file_system2.MaybeInitializeFileSystemContext(sync_context_.get())); | 439 file_system2.MaybeInitializeFileSystemContext(sync_context_.get())); |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 533 | 533 |
| 534 // LocalFileSyncContextTest.PrepareSyncWhileWriting is flaky on android. | 534 // LocalFileSyncContextTest.PrepareSyncWhileWriting is flaky on android. |
| 535 // http://crbug.com/239793 | 535 // http://crbug.com/239793 |
| 536 // It is also flaky on the TSAN v2 bots, and hangs other bots. | 536 // It is also flaky on the TSAN v2 bots, and hangs other bots. |
| 537 // http://crbug.com/305905. | 537 // http://crbug.com/305905. |
| 538 TEST_F(LocalFileSyncContextTest, DISABLED_PrepareSyncWhileWriting) { | 538 TEST_F(LocalFileSyncContextTest, DISABLED_PrepareSyncWhileWriting) { |
| 539 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 539 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 540 in_memory_env_.get(), | 540 in_memory_env_.get(), |
| 541 io_task_runner_.get(), | 541 io_task_runner_.get(), |
| 542 file_task_runner_.get()); | 542 file_task_runner_.get()); |
| 543 file_system.SetUp(); | 543 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 544 sync_context_ = new LocalFileSyncContext( | 544 sync_context_ = new LocalFileSyncContext( |
| 545 dir_.path(), in_memory_env_.get(), | 545 dir_.path(), in_memory_env_.get(), |
| 546 ui_task_runner_.get(), io_task_runner_.get()); | 546 ui_task_runner_.get(), io_task_runner_.get()); |
| 547 EXPECT_EQ(SYNC_STATUS_OK, | 547 EXPECT_EQ(SYNC_STATUS_OK, |
| 548 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); | 548 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); |
| 549 | 549 |
| 550 EXPECT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); | 550 EXPECT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); |
| 551 | 551 |
| 552 const FileSystemURL kURL1(file_system.URL("foo")); | 552 const FileSystemURL kURL1(file_system.URL("foo")); |
| 553 | 553 |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 596 sync_context_->ShutdownOnUIThread(); | 596 sync_context_->ShutdownOnUIThread(); |
| 597 sync_context_ = NULL; | 597 sync_context_ = NULL; |
| 598 file_system.TearDown(); | 598 file_system.TearDown(); |
| 599 } | 599 } |
| 600 | 600 |
| 601 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForDeletion) { | 601 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForDeletion) { |
| 602 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 602 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 603 in_memory_env_.get(), | 603 in_memory_env_.get(), |
| 604 io_task_runner_.get(), | 604 io_task_runner_.get(), |
| 605 file_task_runner_.get()); | 605 file_task_runner_.get()); |
| 606 file_system.SetUp(); | 606 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 607 | 607 |
| 608 sync_context_ = new LocalFileSyncContext( | 608 sync_context_ = new LocalFileSyncContext( |
| 609 dir_.path(), in_memory_env_.get(), | 609 dir_.path(), in_memory_env_.get(), |
| 610 ui_task_runner_.get(), io_task_runner_.get()); | 610 ui_task_runner_.get(), io_task_runner_.get()); |
| 611 ASSERT_EQ(SYNC_STATUS_OK, | 611 ASSERT_EQ(SYNC_STATUS_OK, |
| 612 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); | 612 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); |
| 613 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); | 613 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); |
| 614 | 614 |
| 615 // Record the initial usage (likely 0). | 615 // Record the initial usage (likely 0). |
| 616 int64 initial_usage = -1; | 616 int64 initial_usage = -1; |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 684 sync_context_->ShutdownOnUIThread(); | 684 sync_context_->ShutdownOnUIThread(); |
| 685 sync_context_ = NULL; | 685 sync_context_ = NULL; |
| 686 file_system.TearDown(); | 686 file_system.TearDown(); |
| 687 } | 687 } |
| 688 | 688 |
| 689 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForDeletion_ForRoot) { | 689 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForDeletion_ForRoot) { |
| 690 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 690 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 691 in_memory_env_.get(), | 691 in_memory_env_.get(), |
| 692 io_task_runner_.get(), | 692 io_task_runner_.get(), |
| 693 file_task_runner_.get()); | 693 file_task_runner_.get()); |
| 694 file_system.SetUp(); | 694 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 695 | 695 |
| 696 sync_context_ = new LocalFileSyncContext( | 696 sync_context_ = new LocalFileSyncContext( |
| 697 dir_.path(), in_memory_env_.get(), | 697 dir_.path(), in_memory_env_.get(), |
| 698 ui_task_runner_.get(), io_task_runner_.get()); | 698 ui_task_runner_.get(), io_task_runner_.get()); |
| 699 ASSERT_EQ(SYNC_STATUS_OK, | 699 ASSERT_EQ(SYNC_STATUS_OK, |
| 700 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); | 700 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); |
| 701 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); | 701 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); |
| 702 | 702 |
| 703 // Record the initial usage (likely 0). | 703 // Record the initial usage (likely 0). |
| 704 int64 initial_usage = -1; | 704 int64 initial_usage = -1; |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 754 } | 754 } |
| 755 | 755 |
| 756 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForAddOrUpdate) { | 756 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForAddOrUpdate) { |
| 757 base::ScopedTempDir temp_dir; | 757 base::ScopedTempDir temp_dir; |
| 758 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); | 758 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| 759 | 759 |
| 760 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 760 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 761 in_memory_env_.get(), | 761 in_memory_env_.get(), |
| 762 io_task_runner_.get(), | 762 io_task_runner_.get(), |
| 763 file_task_runner_.get()); | 763 file_task_runner_.get()); |
| 764 file_system.SetUp(); | 764 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 765 | 765 |
| 766 sync_context_ = new LocalFileSyncContext( | 766 sync_context_ = new LocalFileSyncContext( |
| 767 dir_.path(), in_memory_env_.get(), | 767 dir_.path(), in_memory_env_.get(), |
| 768 ui_task_runner_.get(), io_task_runner_.get()); | 768 ui_task_runner_.get(), io_task_runner_.get()); |
| 769 ASSERT_EQ(SYNC_STATUS_OK, | 769 ASSERT_EQ(SYNC_STATUS_OK, |
| 770 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); | 770 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); |
| 771 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); | 771 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); |
| 772 | 772 |
| 773 const FileSystemURL kFile1(file_system.URL("file1")); | 773 const FileSystemURL kFile1(file_system.URL("file1")); |
| 774 const FileSystemURL kFile2(file_system.URL("file2")); | 774 const FileSystemURL kFile2(file_system.URL("file2")); |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 905 } | 905 } |
| 906 | 906 |
| 907 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForAddOrUpdate_NoParent) { | 907 TEST_F(LocalFileSyncContextTest, ApplyRemoteChangeForAddOrUpdate_NoParent) { |
| 908 base::ScopedTempDir temp_dir; | 908 base::ScopedTempDir temp_dir; |
| 909 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); | 909 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| 910 | 910 |
| 911 CannedSyncableFileSystem file_system(GURL(kOrigin1), | 911 CannedSyncableFileSystem file_system(GURL(kOrigin1), |
| 912 in_memory_env_.get(), | 912 in_memory_env_.get(), |
| 913 io_task_runner_.get(), | 913 io_task_runner_.get(), |
| 914 file_task_runner_.get()); | 914 file_task_runner_.get()); |
| 915 file_system.SetUp(); | 915 file_system.SetUp(CannedSyncableFileSystem::QUOTA_ENABLED); |
| 916 | 916 |
| 917 sync_context_ = new LocalFileSyncContext( | 917 sync_context_ = new LocalFileSyncContext( |
| 918 dir_.path(), in_memory_env_.get(), | 918 dir_.path(), in_memory_env_.get(), |
| 919 ui_task_runner_.get(), io_task_runner_.get()); | 919 ui_task_runner_.get(), io_task_runner_.get()); |
| 920 ASSERT_EQ(SYNC_STATUS_OK, | 920 ASSERT_EQ(SYNC_STATUS_OK, |
| 921 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); | 921 file_system.MaybeInitializeFileSystemContext(sync_context_.get())); |
| 922 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); | 922 ASSERT_EQ(base::File::FILE_OK, file_system.OpenFileSystem()); |
| 923 | 923 |
| 924 const char kTestFileData[] = "Lorem ipsum!"; | 924 const char kTestFileData[] = "Lorem ipsum!"; |
| 925 const FileSystemURL kDir(file_system.URL("dir")); | 925 const FileSystemURL kDir(file_system.URL("dir")); |
| (...skipping 27 matching lines...) Expand all Loading... |
| 953 | 953 |
| 954 // Make sure kDir and kFile are created by ApplyRemoteChange. | 954 // Make sure kDir and kFile are created by ApplyRemoteChange. |
| 955 EXPECT_EQ(base::File::FILE_OK, file_system.FileExists(kFile)); | 955 EXPECT_EQ(base::File::FILE_OK, file_system.FileExists(kFile)); |
| 956 EXPECT_EQ(base::File::FILE_OK, file_system.DirectoryExists(kDir)); | 956 EXPECT_EQ(base::File::FILE_OK, file_system.DirectoryExists(kDir)); |
| 957 | 957 |
| 958 sync_context_->ShutdownOnUIThread(); | 958 sync_context_->ShutdownOnUIThread(); |
| 959 file_system.TearDown(); | 959 file_system.TearDown(); |
| 960 } | 960 } |
| 961 | 961 |
| 962 } // namespace sync_file_system | 962 } // namespace sync_file_system |
| OLD | NEW |