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

Side by Side Diff: chrome/browser/sync_file_system/drive_backend/metadata_database_index_unittest.cc

Issue 1873683002: Convert //chrome/browser/sync_file_system from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/drive_backend/metadata_database_index. h" 5 #include "chrome/browser/sync_file_system/drive_backend/metadata_database_index. h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8
8 #include <utility> 9 #include <utility>
9 10
11 #include "base/memory/ptr_util.h"
10 #include "chrome/browser/sync_file_system/drive_backend/drive_backend_constants. h" 12 #include "chrome/browser/sync_file_system/drive_backend/drive_backend_constants. h"
11 #include "chrome/browser/sync_file_system/drive_backend/drive_backend_test_util. h" 13 #include "chrome/browser/sync_file_system/drive_backend/drive_backend_test_util. h"
12 #include "chrome/browser/sync_file_system/drive_backend/leveldb_wrapper.h" 14 #include "chrome/browser/sync_file_system/drive_backend/leveldb_wrapper.h"
13 #include "chrome/browser/sync_file_system/drive_backend/metadata_database.h" 15 #include "chrome/browser/sync_file_system/drive_backend/metadata_database.h"
14 #include "chrome/browser/sync_file_system/drive_backend/metadata_database.pb.h" 16 #include "chrome/browser/sync_file_system/drive_backend/metadata_database.pb.h"
15 #include "testing/gtest/include/gtest/gtest.h" 17 #include "testing/gtest/include/gtest/gtest.h"
16 #include "third_party/leveldatabase/src/helpers/memenv/memenv.h" 18 #include "third_party/leveldatabase/src/helpers/memenv/memenv.h"
17 #include "third_party/leveldatabase/src/include/leveldb/db.h" 19 #include "third_party/leveldatabase/src/include/leveldb/db.h"
18 #include "third_party/leveldatabase/src/include/leveldb/env.h" 20 #include "third_party/leveldatabase/src/include/leveldb/env.h"
19 21
20 namespace sync_file_system { 22 namespace sync_file_system {
21 namespace drive_backend { 23 namespace drive_backend {
22 24
23 namespace { 25 namespace {
24 26
25 const int64_t kSyncRootTrackerID = 1; 27 const int64_t kSyncRootTrackerID = 1;
26 const int64_t kAppRootTrackerID = 2; 28 const int64_t kAppRootTrackerID = 2;
27 const int64_t kFileTrackerID = 3; 29 const int64_t kFileTrackerID = 3;
28 const int64_t kPlaceholderTrackerID = 4; 30 const int64_t kPlaceholderTrackerID = 4;
29 31
30 scoped_ptr<DatabaseContents> CreateTestDatabaseContents() { 32 std::unique_ptr<DatabaseContents> CreateTestDatabaseContents() {
31 scoped_ptr<DatabaseContents> contents(new DatabaseContents); 33 std::unique_ptr<DatabaseContents> contents(new DatabaseContents);
32 34
33 scoped_ptr<FileMetadata> sync_root_metadata = 35 std::unique_ptr<FileMetadata> sync_root_metadata =
34 test_util::CreateFolderMetadata("sync_root_folder_id", 36 test_util::CreateFolderMetadata("sync_root_folder_id",
35 "Chrome Syncable FileSystem"); 37 "Chrome Syncable FileSystem");
36 scoped_ptr<FileTracker> sync_root_tracker = 38 std::unique_ptr<FileTracker> sync_root_tracker = test_util::CreateTracker(
37 test_util::CreateTracker(*sync_root_metadata, kSyncRootTrackerID, 39 *sync_root_metadata, kSyncRootTrackerID, nullptr);
38 nullptr);
39 40
40 scoped_ptr<FileMetadata> app_root_metadata = 41 std::unique_ptr<FileMetadata> app_root_metadata =
41 test_util::CreateFolderMetadata("app_root_folder_id", "app_id"); 42 test_util::CreateFolderMetadata("app_root_folder_id", "app_id");
42 scoped_ptr<FileTracker> app_root_tracker = 43 std::unique_ptr<FileTracker> app_root_tracker = test_util::CreateTracker(
43 test_util::CreateTracker(*app_root_metadata, kAppRootTrackerID, 44 *app_root_metadata, kAppRootTrackerID, sync_root_tracker.get());
44 sync_root_tracker.get());
45 app_root_tracker->set_app_id("app_id"); 45 app_root_tracker->set_app_id("app_id");
46 app_root_tracker->set_tracker_kind(TRACKER_KIND_APP_ROOT); 46 app_root_tracker->set_tracker_kind(TRACKER_KIND_APP_ROOT);
47 47
48 scoped_ptr<FileMetadata> file_metadata = 48 std::unique_ptr<FileMetadata> file_metadata =
49 test_util::CreateFileMetadata("file_id", "file", "file_md5"); 49 test_util::CreateFileMetadata("file_id", "file", "file_md5");
50 scoped_ptr<FileTracker> file_tracker = 50 std::unique_ptr<FileTracker> file_tracker = test_util::CreateTracker(
51 test_util::CreateTracker(*file_metadata, kFileTrackerID, 51 *file_metadata, kFileTrackerID, app_root_tracker.get());
52 app_root_tracker.get());
53 52
54 scoped_ptr<FileTracker> placeholder_tracker = 53 std::unique_ptr<FileTracker> placeholder_tracker =
55 test_util::CreatePlaceholderTracker("unsynced_file_id", 54 test_util::CreatePlaceholderTracker(
56 kPlaceholderTrackerID, 55 "unsynced_file_id", kPlaceholderTrackerID, app_root_tracker.get());
57 app_root_tracker.get());
58 56
59 contents->file_metadata.push_back(sync_root_metadata.release()); 57 contents->file_metadata.push_back(sync_root_metadata.release());
60 contents->file_trackers.push_back(sync_root_tracker.release()); 58 contents->file_trackers.push_back(sync_root_tracker.release());
61 contents->file_metadata.push_back(app_root_metadata.release()); 59 contents->file_metadata.push_back(app_root_metadata.release());
62 contents->file_trackers.push_back(app_root_tracker.release()); 60 contents->file_trackers.push_back(app_root_tracker.release());
63 contents->file_metadata.push_back(file_metadata.release()); 61 contents->file_metadata.push_back(file_metadata.release());
64 contents->file_trackers.push_back(file_tracker.release()); 62 contents->file_trackers.push_back(file_tracker.release());
65 contents->file_trackers.push_back(placeholder_tracker.release()); 63 contents->file_trackers.push_back(placeholder_tracker.release());
66 return contents; 64 return contents;
67 } 65 }
(...skipping 16 matching lines...) Expand all
84 private: 82 private:
85 void InitializeLevelDB() { 83 void InitializeLevelDB() {
86 leveldb::DB* db = nullptr; 84 leveldb::DB* db = nullptr;
87 leveldb::Options options; 85 leveldb::Options options;
88 options.create_if_missing = true; 86 options.create_if_missing = true;
89 options.max_open_files = 0; // Use minimum. 87 options.max_open_files = 0; // Use minimum.
90 options.env = in_memory_env_.get(); 88 options.env = in_memory_env_.get();
91 leveldb::Status status = leveldb::DB::Open(options, "", &db); 89 leveldb::Status status = leveldb::DB::Open(options, "", &db);
92 ASSERT_TRUE(status.ok()); 90 ASSERT_TRUE(status.ok());
93 91
94 db_.reset(new LevelDBWrapper(make_scoped_ptr(db))); 92 db_.reset(new LevelDBWrapper(base::WrapUnique(db)));
95 } 93 }
96 94
97 scoped_ptr<DatabaseContents> contents_; 95 std::unique_ptr<DatabaseContents> contents_;
98 scoped_ptr<MetadataDatabaseIndex> index_; 96 std::unique_ptr<MetadataDatabaseIndex> index_;
99 97
100 scoped_ptr<leveldb::Env> in_memory_env_; 98 std::unique_ptr<leveldb::Env> in_memory_env_;
101 scoped_ptr<LevelDBWrapper> db_; 99 std::unique_ptr<LevelDBWrapper> db_;
102 }; 100 };
103 101
104 TEST_F(MetadataDatabaseIndexTest, GetEntryTest) { 102 TEST_F(MetadataDatabaseIndexTest, GetEntryTest) {
105 FileTracker tracker; 103 FileTracker tracker;
106 EXPECT_FALSE(index()->GetFileTracker(kInvalidTrackerID, nullptr)); 104 EXPECT_FALSE(index()->GetFileTracker(kInvalidTrackerID, nullptr));
107 ASSERT_TRUE(index()->GetFileTracker(kFileTrackerID, &tracker)); 105 ASSERT_TRUE(index()->GetFileTracker(kFileTrackerID, &tracker));
108 EXPECT_EQ(kFileTrackerID, tracker.tracker_id()); 106 EXPECT_EQ(kFileTrackerID, tracker.tracker_id());
109 EXPECT_EQ("file_id", tracker.file_id()); 107 EXPECT_EQ("file_id", tracker.file_id());
110 108
111 FileMetadata metadata; 109 FileMetadata metadata;
(...skipping 30 matching lines...) Expand all
142 EXPECT_EQ(kInvalidTrackerID, index()->PickDirtyTracker()); 140 EXPECT_EQ(kInvalidTrackerID, index()->PickDirtyTracker());
143 index()->PromoteDemotedDirtyTrackers(); 141 index()->PromoteDemotedDirtyTrackers();
144 EXPECT_EQ(kPlaceholderTrackerID, index()->PickDirtyTracker()); 142 EXPECT_EQ(kPlaceholderTrackerID, index()->PickDirtyTracker());
145 143
146 FileMetadata metadata; 144 FileMetadata metadata;
147 ASSERT_TRUE(index()->GetFileMetadata("file_id", &metadata)); 145 ASSERT_TRUE(index()->GetFileMetadata("file_id", &metadata));
148 FileTracker app_root_tracker; 146 FileTracker app_root_tracker;
149 ASSERT_TRUE(index()->GetFileTracker(kAppRootTrackerID, &app_root_tracker)); 147 ASSERT_TRUE(index()->GetFileTracker(kAppRootTrackerID, &app_root_tracker));
150 148
151 int64_t new_tracker_id = 100; 149 int64_t new_tracker_id = 100;
152 scoped_ptr<FileTracker> new_tracker = 150 std::unique_ptr<FileTracker> new_tracker =
153 test_util::CreateTracker(metadata, new_tracker_id, &app_root_tracker); 151 test_util::CreateTracker(metadata, new_tracker_id, &app_root_tracker);
154 new_tracker->set_active(false); 152 new_tracker->set_active(false);
155 index()->StoreFileTracker(std::move(new_tracker)); 153 index()->StoreFileTracker(std::move(new_tracker));
156 154
157 EXPECT_EQ("file_id", index()->PickMultiTrackerFileID()); 155 EXPECT_EQ("file_id", index()->PickMultiTrackerFileID());
158 EXPECT_EQ(ParentIDAndTitle(kAppRootTrackerID, std::string("file")), 156 EXPECT_EQ(ParentIDAndTitle(kAppRootTrackerID, std::string("file")),
159 index()->PickMultiBackingFilePath()); 157 index()->PickMultiBackingFilePath());
160 158
161 index()->RemoveFileMetadata("file_id"); 159 index()->RemoveFileMetadata("file_id");
162 index()->RemoveFileTracker(kFileTrackerID); 160 index()->RemoveFileTracker(kFileTrackerID);
163 161
164 EXPECT_FALSE(index()->GetFileMetadata("file_id", nullptr)); 162 EXPECT_FALSE(index()->GetFileMetadata("file_id", nullptr));
165 EXPECT_FALSE(index()->GetFileTracker(kFileTrackerID, nullptr)); 163 EXPECT_FALSE(index()->GetFileTracker(kFileTrackerID, nullptr));
166 } 164 }
167 165
168 } // namespace drive_backend 166 } // namespace drive_backend
169 } // namespace sync_file_system 167 } // namespace sync_file_system
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698