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

Side by Side Diff: chrome/browser/chromeos/drive/file_system/create_directory_operation_unittest.cc

Issue 12706012: chromeos: Destruct DriveResourceMetadata on the blocking pool (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add note 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
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/file_system/create_directory_operation.h " 5 #include "chrome/browser/chromeos/drive/file_system/create_directory_operation.h "
6 6
7 #include "base/message_loop.h" 7 #include "base/message_loop.h"
8 #include "base/threading/sequenced_worker_pool.h" 8 #include "base/threading/sequenced_worker_pool.h"
9 #include "chrome/browser/chromeos/drive/change_list_loader.h" 9 #include "chrome/browser/chromeos/drive/change_list_loader.h"
10 #include "chrome/browser/chromeos/drive/drive_cache.h" 10 #include "chrome/browser/chromeos/drive/drive_cache.h"
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 new DriveResourceMetadata(fake_drive_service_->GetRootResourceId(), 50 new DriveResourceMetadata(fake_drive_service_->GetRootResourceId(),
51 blocking_task_runner_)); 51 blocking_task_runner_));
52 52
53 scheduler_.reset( 53 scheduler_.reset(
54 new DriveScheduler(profile_.get(), fake_drive_service_.get(), NULL)); 54 new DriveScheduler(profile_.get(), fake_drive_service_.get(), NULL));
55 scheduler_->Initialize(); 55 scheduler_->Initialize();
56 56
57 drive_web_apps_registry_.reset(new DriveWebAppsRegistry); 57 drive_web_apps_registry_.reset(new DriveWebAppsRegistry);
58 58
59 fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter); 59 fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter);
60 cache_ = new DriveCache( 60 cache_.reset(new DriveCache(DriveCache::GetCacheRootPath(profile_.get()),
61 DriveCache::GetCacheRootPath(profile_.get()), 61 blocking_task_runner_,
62 blocking_task_runner_, 62 fake_free_disk_space_getter_.get()));
63 fake_free_disk_space_getter_.get());
64 63
65 change_list_loader_.reset(new ChangeListLoader( 64 change_list_loader_.reset(new ChangeListLoader(
66 metadata_.get(), scheduler_.get(), drive_web_apps_registry_.get(), 65 metadata_.get(), scheduler_.get(), drive_web_apps_registry_.get(),
67 cache_)); 66 cache_.get()));
68 67
69 DriveFileError error = DRIVE_FILE_OK; 68 DriveFileError error = DRIVE_FILE_OK;
70 change_list_loader_->LoadFromServerIfNeeded( 69 change_list_loader_->LoadFromServerIfNeeded(
71 DirectoryFetchInfo(), 70 DirectoryFetchInfo(),
72 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, 71 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback,
73 &error)); 72 &error));
74 cache_->RequestInitializeForTesting(); 73 cache_->RequestInitializeForTesting();
75 google_apis::test_util::RunBlockingPoolTask(); 74 google_apis::test_util::RunBlockingPoolTask();
76 75
77 operation_.reset( 76 operation_.reset(
78 new CreateDirectoryOperation(scheduler_.get(), metadata_.get(), this)); 77 new CreateDirectoryOperation(scheduler_.get(), metadata_.get(), this));
79 } 78 }
80 79
81 virtual void TearDown() OVERRIDE { 80 virtual void TearDown() OVERRIDE {
82 operation_.reset(); 81 operation_.reset();
83 change_list_loader_.reset(); 82 change_list_loader_.reset();
84 test_util::DeleteDriveCache(cache_); 83 cache_.reset();
85 fake_free_disk_space_getter_.reset(); 84 fake_free_disk_space_getter_.reset();
86 drive_web_apps_registry_.reset(); 85 drive_web_apps_registry_.reset();
87 scheduler_.reset(); 86 scheduler_.reset();
88 metadata_.reset(); 87 metadata_.reset();
89 fake_drive_service_.reset(); 88 fake_drive_service_.reset();
90 profile_.reset(); 89 profile_.reset();
91 90
92 blocking_task_runner_ = NULL; 91 blocking_task_runner_ = NULL;
93 } 92 }
94 93
(...skipping 26 matching lines...) Expand all
121 private: 120 private:
122 MessageLoopForUI message_loop_; 121 MessageLoopForUI message_loop_;
123 // The order of the test threads is important, do not change the order. 122 // The order of the test threads is important, do not change the order.
124 // See also content/browser/browser_thread_impl.cc. 123 // See also content/browser/browser_thread_impl.cc.
125 content::TestBrowserThread ui_thread_; 124 content::TestBrowserThread ui_thread_;
126 scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_; 125 scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_;
127 126
128 scoped_ptr<TestingProfile> profile_; 127 scoped_ptr<TestingProfile> profile_;
129 128
130 scoped_ptr<google_apis::FakeDriveService> fake_drive_service_; 129 scoped_ptr<google_apis::FakeDriveService> fake_drive_service_;
131 scoped_ptr<DriveResourceMetadata> metadata_; 130 scoped_ptr<DriveResourceMetadata, test_util::DestroyHelperForTests> metadata_;
132 scoped_ptr<DriveScheduler> scheduler_; 131 scoped_ptr<DriveScheduler> scheduler_;
133 scoped_ptr<DriveWebAppsRegistry> drive_web_apps_registry_; 132 scoped_ptr<DriveWebAppsRegistry> drive_web_apps_registry_;
134 scoped_ptr<FakeFreeDiskSpaceGetter> fake_free_disk_space_getter_; 133 scoped_ptr<FakeFreeDiskSpaceGetter> fake_free_disk_space_getter_;
135 134
136 // The way to delete the DriveCache instance is a bit tricky, so here we use 135 scoped_ptr<DriveCache, test_util::DestroyHelperForTests> cache_;
137 // a raw point. See TearDown method for how to delete it.
138 DriveCache* cache_;
139 scoped_ptr<ChangeListLoader> change_list_loader_; 136 scoped_ptr<ChangeListLoader> change_list_loader_;
140 137
141 scoped_ptr<CreateDirectoryOperation> operation_; 138 scoped_ptr<CreateDirectoryOperation> operation_;
142 }; 139 };
143 140
144 TEST_F(CreateDirectoryOperationTest, FindFirstMissingParentDirectory) { 141 TEST_F(CreateDirectoryOperationTest, FindFirstMissingParentDirectory) {
145 ASSERT_TRUE(LoadRootFeedDocument("chromeos/gdata/root_feed.json")); 142 ASSERT_TRUE(LoadRootFeedDocument("chromeos/gdata/root_feed.json"));
146 143
147 CreateDirectoryOperation::FindFirstMissingParentDirectoryResult result; 144 CreateDirectoryOperation::FindFirstMissingParentDirectoryResult result;
148 145
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1")), 193 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1")),
197 base::Bind(&CopyResultFromFindFirstMissingParentDirectory, 194 base::Bind(&CopyResultFromFindFirstMissingParentDirectory,
198 &result)); 195 &result));
199 google_apis::test_util::RunBlockingPoolTask(); 196 google_apis::test_util::RunBlockingPoolTask();
200 EXPECT_EQ(CreateDirectoryOperation::FIND_FIRST_DIRECTORY_ALREADY_PRESENT, 197 EXPECT_EQ(CreateDirectoryOperation::FIND_FIRST_DIRECTORY_ALREADY_PRESENT,
201 result.error); 198 result.error);
202 } 199 }
203 200
204 } // namespace file_system 201 } // namespace file_system
205 } // namespace drive 202 } // namespace drive
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/drive/drive_test_util.cc ('k') | chrome/browser/chromeos/drive/search_metadata_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698