OLD | NEW |
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 <set> | 5 #include <set> |
6 | 6 |
7 #include "base/file_util.h" | 7 #include "base/file_util.h" |
8 #include "base/files/file_path.h" | 8 #include "base/files/file_path.h" |
9 #include "base/files/scoped_temp_dir.h" | 9 #include "base/files/scoped_temp_dir.h" |
10 #include "base/platform_file.h" | 10 #include "base/platform_file.h" |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 base::ScopedTempDir data_dir_; | 45 base::ScopedTempDir data_dir_; |
46 | 46 |
47 DISALLOW_COPY_AND_ASSIGN(NativeFileUtilTest); | 47 DISALLOW_COPY_AND_ASSIGN(NativeFileUtilTest); |
48 }; | 48 }; |
49 | 49 |
50 TEST_F(NativeFileUtilTest, CreateCloseAndDeleteFile) { | 50 TEST_F(NativeFileUtilTest, CreateCloseAndDeleteFile) { |
51 base::FilePath file_name = Path("test_file"); | 51 base::FilePath file_name = Path("test_file"); |
52 base::PlatformFile file_handle; | 52 base::PlatformFile file_handle; |
53 bool created = false; | 53 bool created = false; |
54 int flags = base::PLATFORM_FILE_WRITE | base::PLATFORM_FILE_ASYNC; | 54 int flags = base::PLATFORM_FILE_WRITE | base::PLATFORM_FILE_ASYNC; |
55 ASSERT_EQ(base::PLATFORM_FILE_OK, | 55 ASSERT_EQ(base::File::FILE_OK, |
56 NativeFileUtil::CreateOrOpen(file_name, | 56 NativeFileUtil::CreateOrOpen(file_name, |
57 base::PLATFORM_FILE_CREATE | flags, | 57 base::PLATFORM_FILE_CREATE | flags, |
58 &file_handle, &created)); | 58 &file_handle, &created)); |
59 ASSERT_TRUE(created); | 59 ASSERT_TRUE(created); |
60 | 60 |
61 EXPECT_TRUE(base::PathExists(file_name)); | 61 EXPECT_TRUE(base::PathExists(file_name)); |
62 EXPECT_TRUE(NativeFileUtil::PathExists(file_name)); | 62 EXPECT_TRUE(NativeFileUtil::PathExists(file_name)); |
63 EXPECT_EQ(0, GetSize(file_name)); | 63 EXPECT_EQ(0, GetSize(file_name)); |
64 EXPECT_NE(base::kInvalidPlatformFileValue, file_handle); | 64 EXPECT_NE(base::kInvalidPlatformFileValue, file_handle); |
65 | 65 |
66 ASSERT_EQ(base::PLATFORM_FILE_OK, NativeFileUtil::Close(file_handle)); | 66 ASSERT_EQ(base::File::FILE_OK, NativeFileUtil::Close(file_handle)); |
67 | 67 |
68 ASSERT_EQ(base::PLATFORM_FILE_OK, | 68 ASSERT_EQ(base::File::FILE_OK, |
69 NativeFileUtil::CreateOrOpen(file_name, | 69 NativeFileUtil::CreateOrOpen(file_name, |
70 base::PLATFORM_FILE_OPEN | flags, | 70 base::PLATFORM_FILE_OPEN | flags, |
71 &file_handle, &created)); | 71 &file_handle, &created)); |
72 ASSERT_FALSE(created); | 72 ASSERT_FALSE(created); |
73 ASSERT_EQ(base::PLATFORM_FILE_OK, NativeFileUtil::Close(file_handle)); | 73 ASSERT_EQ(base::File::FILE_OK, NativeFileUtil::Close(file_handle)); |
74 | 74 |
75 ASSERT_EQ(base::PLATFORM_FILE_OK, | 75 ASSERT_EQ(base::File::FILE_OK, |
76 NativeFileUtil::DeleteFile(file_name)); | 76 NativeFileUtil::DeleteFile(file_name)); |
77 EXPECT_FALSE(base::PathExists(file_name)); | 77 EXPECT_FALSE(base::PathExists(file_name)); |
78 EXPECT_FALSE(NativeFileUtil::PathExists(file_name)); | 78 EXPECT_FALSE(NativeFileUtil::PathExists(file_name)); |
79 } | 79 } |
80 | 80 |
81 TEST_F(NativeFileUtilTest, EnsureFileExists) { | 81 TEST_F(NativeFileUtilTest, EnsureFileExists) { |
82 base::FilePath file_name = Path("foobar"); | 82 base::FilePath file_name = Path("foobar"); |
83 bool created = false; | 83 bool created = false; |
84 ASSERT_EQ(base::PLATFORM_FILE_OK, | 84 ASSERT_EQ(base::File::FILE_OK, |
85 NativeFileUtil::EnsureFileExists(file_name, &created)); | 85 NativeFileUtil::EnsureFileExists(file_name, &created)); |
86 ASSERT_TRUE(created); | 86 ASSERT_TRUE(created); |
87 | 87 |
88 EXPECT_TRUE(FileExists(file_name)); | 88 EXPECT_TRUE(FileExists(file_name)); |
89 EXPECT_EQ(0, GetSize(file_name)); | 89 EXPECT_EQ(0, GetSize(file_name)); |
90 | 90 |
91 ASSERT_EQ(base::PLATFORM_FILE_OK, | 91 ASSERT_EQ(base::File::FILE_OK, |
92 NativeFileUtil::EnsureFileExists(file_name, &created)); | 92 NativeFileUtil::EnsureFileExists(file_name, &created)); |
93 EXPECT_FALSE(created); | 93 EXPECT_FALSE(created); |
94 } | 94 } |
95 | 95 |
96 TEST_F(NativeFileUtilTest, CreateAndDeleteDirectory) { | 96 TEST_F(NativeFileUtilTest, CreateAndDeleteDirectory) { |
97 base::FilePath dir_name = Path("test_dir"); | 97 base::FilePath dir_name = Path("test_dir"); |
98 ASSERT_EQ(base::PLATFORM_FILE_OK, | 98 ASSERT_EQ(base::File::FILE_OK, |
99 NativeFileUtil::CreateDirectory(dir_name, | 99 NativeFileUtil::CreateDirectory(dir_name, |
100 false /* exclusive */, | 100 false /* exclusive */, |
101 false /* recursive */)); | 101 false /* recursive */)); |
102 | 102 |
103 EXPECT_TRUE(NativeFileUtil::DirectoryExists(dir_name)); | 103 EXPECT_TRUE(NativeFileUtil::DirectoryExists(dir_name)); |
104 EXPECT_TRUE(base::DirectoryExists(dir_name)); | 104 EXPECT_TRUE(base::DirectoryExists(dir_name)); |
105 | 105 |
106 ASSERT_EQ(base::PLATFORM_FILE_ERROR_EXISTS, | 106 ASSERT_EQ(base::File::FILE_ERROR_EXISTS, |
107 NativeFileUtil::CreateDirectory(dir_name, | 107 NativeFileUtil::CreateDirectory(dir_name, |
108 true /* exclusive */, | 108 true /* exclusive */, |
109 false /* recursive */)); | 109 false /* recursive */)); |
110 | 110 |
111 ASSERT_EQ(base::PLATFORM_FILE_OK, | 111 ASSERT_EQ(base::File::FILE_OK, |
112 NativeFileUtil::DeleteDirectory(dir_name)); | 112 NativeFileUtil::DeleteDirectory(dir_name)); |
113 EXPECT_FALSE(base::DirectoryExists(dir_name)); | 113 EXPECT_FALSE(base::DirectoryExists(dir_name)); |
114 EXPECT_FALSE(NativeFileUtil::DirectoryExists(dir_name)); | 114 EXPECT_FALSE(NativeFileUtil::DirectoryExists(dir_name)); |
115 } | 115 } |
116 | 116 |
117 TEST_F(NativeFileUtilTest, TouchFileAndGetFileInfo) { | 117 TEST_F(NativeFileUtilTest, TouchFileAndGetFileInfo) { |
118 base::FilePath file_name = Path("test_file"); | 118 base::FilePath file_name = Path("test_file"); |
119 base::PlatformFileInfo native_info; | 119 base::File::Info native_info; |
120 ASSERT_EQ(base::PLATFORM_FILE_ERROR_NOT_FOUND, | 120 ASSERT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
121 NativeFileUtil::GetFileInfo(file_name, &native_info)); | 121 NativeFileUtil::GetFileInfo(file_name, &native_info)); |
122 | 122 |
123 bool created = false; | 123 bool created = false; |
124 ASSERT_EQ(base::PLATFORM_FILE_OK, | 124 ASSERT_EQ(base::File::FILE_OK, |
125 NativeFileUtil::EnsureFileExists(file_name, &created)); | 125 NativeFileUtil::EnsureFileExists(file_name, &created)); |
126 ASSERT_TRUE(created); | 126 ASSERT_TRUE(created); |
127 | 127 |
128 base::File::Info info; | 128 base::File::Info info; |
129 ASSERT_TRUE(base::GetFileInfo(file_name, &info)); | 129 ASSERT_TRUE(base::GetFileInfo(file_name, &info)); |
130 ASSERT_EQ(base::PLATFORM_FILE_OK, | 130 ASSERT_EQ(base::File::FILE_OK, |
131 NativeFileUtil::GetFileInfo(file_name, &native_info)); | 131 NativeFileUtil::GetFileInfo(file_name, &native_info)); |
132 ASSERT_EQ(info.size, native_info.size); | 132 ASSERT_EQ(info.size, native_info.size); |
133 ASSERT_EQ(info.is_directory, native_info.is_directory); | 133 ASSERT_EQ(info.is_directory, native_info.is_directory); |
134 ASSERT_EQ(info.is_symbolic_link, native_info.is_symbolic_link); | 134 ASSERT_EQ(info.is_symbolic_link, native_info.is_symbolic_link); |
135 ASSERT_EQ(info.last_modified, native_info.last_modified); | 135 ASSERT_EQ(info.last_modified, native_info.last_modified); |
136 ASSERT_EQ(info.last_accessed, native_info.last_accessed); | 136 ASSERT_EQ(info.last_accessed, native_info.last_accessed); |
137 ASSERT_EQ(info.creation_time, native_info.creation_time); | 137 ASSERT_EQ(info.creation_time, native_info.creation_time); |
138 | 138 |
139 const base::Time new_accessed = | 139 const base::Time new_accessed = |
140 info.last_accessed + base::TimeDelta::FromHours(10); | 140 info.last_accessed + base::TimeDelta::FromHours(10); |
141 const base::Time new_modified = | 141 const base::Time new_modified = |
142 info.last_modified + base::TimeDelta::FromHours(5); | 142 info.last_modified + base::TimeDelta::FromHours(5); |
143 | 143 |
144 EXPECT_EQ(base::PLATFORM_FILE_OK, | 144 EXPECT_EQ(base::File::FILE_OK, |
145 NativeFileUtil::Touch(file_name, | 145 NativeFileUtil::Touch(file_name, |
146 new_accessed, new_modified)); | 146 new_accessed, new_modified)); |
147 | 147 |
148 ASSERT_TRUE(base::GetFileInfo(file_name, &info)); | 148 ASSERT_TRUE(base::GetFileInfo(file_name, &info)); |
149 EXPECT_EQ(new_accessed, info.last_accessed); | 149 EXPECT_EQ(new_accessed, info.last_accessed); |
150 EXPECT_EQ(new_modified, info.last_modified); | 150 EXPECT_EQ(new_modified, info.last_modified); |
151 } | 151 } |
152 | 152 |
153 TEST_F(NativeFileUtilTest, CreateFileEnumerator) { | 153 TEST_F(NativeFileUtilTest, CreateFileEnumerator) { |
154 base::FilePath path_1 = Path("dir1"); | 154 base::FilePath path_1 = Path("dir1"); |
155 base::FilePath path_2 = Path("file1"); | 155 base::FilePath path_2 = Path("file1"); |
156 base::FilePath path_11 = Path("dir1").AppendASCII("file11"); | 156 base::FilePath path_11 = Path("dir1").AppendASCII("file11"); |
157 base::FilePath path_12 = Path("dir1").AppendASCII("dir12"); | 157 base::FilePath path_12 = Path("dir1").AppendASCII("dir12"); |
158 base::FilePath path_121 = | 158 base::FilePath path_121 = |
159 Path("dir1").AppendASCII("dir12").AppendASCII("file121"); | 159 Path("dir1").AppendASCII("dir12").AppendASCII("file121"); |
160 ASSERT_EQ(base::PLATFORM_FILE_OK, | 160 ASSERT_EQ(base::File::FILE_OK, |
161 NativeFileUtil::CreateDirectory(path_1, false, false)); | 161 NativeFileUtil::CreateDirectory(path_1, false, false)); |
162 bool created = false; | 162 bool created = false; |
163 ASSERT_EQ(base::PLATFORM_FILE_OK, | 163 ASSERT_EQ(base::File::FILE_OK, |
164 NativeFileUtil::EnsureFileExists(path_2, &created)); | 164 NativeFileUtil::EnsureFileExists(path_2, &created)); |
165 ASSERT_EQ(base::PLATFORM_FILE_OK, | 165 ASSERT_EQ(base::File::FILE_OK, |
166 NativeFileUtil::EnsureFileExists(path_11, &created)); | 166 NativeFileUtil::EnsureFileExists(path_11, &created)); |
167 ASSERT_EQ(base::PLATFORM_FILE_OK, | 167 ASSERT_EQ(base::File::FILE_OK, |
168 NativeFileUtil::CreateDirectory(path_12, false, false)); | 168 NativeFileUtil::CreateDirectory(path_12, false, false)); |
169 ASSERT_EQ(base::PLATFORM_FILE_OK, | 169 ASSERT_EQ(base::File::FILE_OK, |
170 NativeFileUtil::EnsureFileExists(path_121, &created)); | 170 NativeFileUtil::EnsureFileExists(path_121, &created)); |
171 | 171 |
172 { | 172 { |
173 scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator> enumerator = | 173 scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator> enumerator = |
174 NativeFileUtil::CreateFileEnumerator(Path(), false); | 174 NativeFileUtil::CreateFileEnumerator(Path(), false); |
175 std::set<base::FilePath> set; | 175 std::set<base::FilePath> set; |
176 set.insert(path_1); | 176 set.insert(path_1); |
177 set.insert(path_2); | 177 set.insert(path_2); |
178 for (base::FilePath path = enumerator->Next(); !path.empty(); | 178 for (base::FilePath path = enumerator->Next(); !path.empty(); |
179 path = enumerator->Next()) | 179 path = enumerator->Next()) |
(...skipping 13 matching lines...) Expand all Loading... |
193 for (base::FilePath path = enumerator->Next(); !path.empty(); | 193 for (base::FilePath path = enumerator->Next(); !path.empty(); |
194 path = enumerator->Next()) | 194 path = enumerator->Next()) |
195 EXPECT_EQ(1U, set.erase(path)); | 195 EXPECT_EQ(1U, set.erase(path)); |
196 EXPECT_TRUE(set.empty()); | 196 EXPECT_TRUE(set.empty()); |
197 } | 197 } |
198 } | 198 } |
199 | 199 |
200 TEST_F(NativeFileUtilTest, Truncate) { | 200 TEST_F(NativeFileUtilTest, Truncate) { |
201 base::FilePath file_name = Path("truncated"); | 201 base::FilePath file_name = Path("truncated"); |
202 bool created = false; | 202 bool created = false; |
203 ASSERT_EQ(base::PLATFORM_FILE_OK, | 203 ASSERT_EQ(base::File::FILE_OK, |
204 NativeFileUtil::EnsureFileExists(file_name, &created)); | 204 NativeFileUtil::EnsureFileExists(file_name, &created)); |
205 ASSERT_TRUE(created); | 205 ASSERT_TRUE(created); |
206 | 206 |
207 ASSERT_EQ(base::PLATFORM_FILE_OK, | 207 ASSERT_EQ(base::File::FILE_OK, |
208 NativeFileUtil::Truncate(file_name, 1020)); | 208 NativeFileUtil::Truncate(file_name, 1020)); |
209 | 209 |
210 EXPECT_TRUE(FileExists(file_name)); | 210 EXPECT_TRUE(FileExists(file_name)); |
211 EXPECT_EQ(1020, GetSize(file_name)); | 211 EXPECT_EQ(1020, GetSize(file_name)); |
212 } | 212 } |
213 | 213 |
214 TEST_F(NativeFileUtilTest, CopyFile) { | 214 TEST_F(NativeFileUtilTest, CopyFile) { |
215 base::FilePath from_file = Path("fromfile"); | 215 base::FilePath from_file = Path("fromfile"); |
216 base::FilePath to_file1 = Path("tofile1"); | 216 base::FilePath to_file1 = Path("tofile1"); |
217 base::FilePath to_file2 = Path("tofile2"); | 217 base::FilePath to_file2 = Path("tofile2"); |
218 const NativeFileUtil::CopyOrMoveMode nosync = NativeFileUtil::COPY_NOSYNC; | 218 const NativeFileUtil::CopyOrMoveMode nosync = NativeFileUtil::COPY_NOSYNC; |
219 const NativeFileUtil::CopyOrMoveMode sync = NativeFileUtil::COPY_SYNC; | 219 const NativeFileUtil::CopyOrMoveMode sync = NativeFileUtil::COPY_SYNC; |
220 bool created = false; | 220 bool created = false; |
221 ASSERT_EQ(base::PLATFORM_FILE_OK, | 221 ASSERT_EQ(base::File::FILE_OK, |
222 NativeFileUtil::EnsureFileExists(from_file, &created)); | 222 NativeFileUtil::EnsureFileExists(from_file, &created)); |
223 ASSERT_TRUE(created); | 223 ASSERT_TRUE(created); |
224 | 224 |
225 ASSERT_EQ(base::PLATFORM_FILE_OK, | 225 ASSERT_EQ(base::File::FILE_OK, |
226 NativeFileUtil::Truncate(from_file, 1020)); | 226 NativeFileUtil::Truncate(from_file, 1020)); |
227 | 227 |
228 EXPECT_TRUE(FileExists(from_file)); | 228 EXPECT_TRUE(FileExists(from_file)); |
229 EXPECT_EQ(1020, GetSize(from_file)); | 229 EXPECT_EQ(1020, GetSize(from_file)); |
230 | 230 |
231 ASSERT_EQ(base::PLATFORM_FILE_OK, | 231 ASSERT_EQ(base::File::FILE_OK, |
232 NativeFileUtil::CopyOrMoveFile( | 232 NativeFileUtil::CopyOrMoveFile( |
233 from_file, to_file1, FileSystemOperation::OPTION_NONE, nosync)); | 233 from_file, to_file1, FileSystemOperation::OPTION_NONE, nosync)); |
234 | 234 |
235 ASSERT_EQ(base::PLATFORM_FILE_OK, | 235 ASSERT_EQ(base::File::FILE_OK, |
236 NativeFileUtil::CopyOrMoveFile( | 236 NativeFileUtil::CopyOrMoveFile( |
237 from_file, to_file2, FileSystemOperation::OPTION_NONE, sync)); | 237 from_file, to_file2, FileSystemOperation::OPTION_NONE, sync)); |
238 | 238 |
239 EXPECT_TRUE(FileExists(from_file)); | 239 EXPECT_TRUE(FileExists(from_file)); |
240 EXPECT_EQ(1020, GetSize(from_file)); | 240 EXPECT_EQ(1020, GetSize(from_file)); |
241 EXPECT_TRUE(FileExists(to_file1)); | 241 EXPECT_TRUE(FileExists(to_file1)); |
242 EXPECT_EQ(1020, GetSize(to_file1)); | 242 EXPECT_EQ(1020, GetSize(to_file1)); |
243 EXPECT_TRUE(FileExists(to_file2)); | 243 EXPECT_TRUE(FileExists(to_file2)); |
244 EXPECT_EQ(1020, GetSize(to_file2)); | 244 EXPECT_EQ(1020, GetSize(to_file2)); |
245 | 245 |
246 base::FilePath dir = Path("dir"); | 246 base::FilePath dir = Path("dir"); |
247 ASSERT_EQ(base::PLATFORM_FILE_OK, | 247 ASSERT_EQ(base::File::FILE_OK, |
248 NativeFileUtil::CreateDirectory(dir, false, false)); | 248 NativeFileUtil::CreateDirectory(dir, false, false)); |
249 ASSERT_TRUE(base::DirectoryExists(dir)); | 249 ASSERT_TRUE(base::DirectoryExists(dir)); |
250 base::FilePath to_dir_file = dir.AppendASCII("file"); | 250 base::FilePath to_dir_file = dir.AppendASCII("file"); |
251 ASSERT_EQ(base::PLATFORM_FILE_OK, | 251 ASSERT_EQ(base::File::FILE_OK, |
252 NativeFileUtil::CopyOrMoveFile( | 252 NativeFileUtil::CopyOrMoveFile( |
253 from_file, to_dir_file, | 253 from_file, to_dir_file, |
254 FileSystemOperation::OPTION_NONE, nosync)); | 254 FileSystemOperation::OPTION_NONE, nosync)); |
255 EXPECT_TRUE(FileExists(to_dir_file)); | 255 EXPECT_TRUE(FileExists(to_dir_file)); |
256 EXPECT_EQ(1020, GetSize(to_dir_file)); | 256 EXPECT_EQ(1020, GetSize(to_dir_file)); |
257 | 257 |
258 // Following tests are error checking. | 258 // Following tests are error checking. |
259 // Source doesn't exist. | 259 // Source doesn't exist. |
260 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_FOUND, | 260 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
261 NativeFileUtil::CopyOrMoveFile( | 261 NativeFileUtil::CopyOrMoveFile( |
262 Path("nonexists"), Path("file"), | 262 Path("nonexists"), Path("file"), |
263 FileSystemOperation::OPTION_NONE, nosync)); | 263 FileSystemOperation::OPTION_NONE, nosync)); |
264 | 264 |
265 // Source is not a file. | 265 // Source is not a file. |
266 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_A_FILE, | 266 EXPECT_EQ(base::File::FILE_ERROR_NOT_A_FILE, |
267 NativeFileUtil::CopyOrMoveFile( | 267 NativeFileUtil::CopyOrMoveFile( |
268 dir, Path("file"), FileSystemOperation::OPTION_NONE, nosync)); | 268 dir, Path("file"), FileSystemOperation::OPTION_NONE, nosync)); |
269 // Destination is not a file. | 269 // Destination is not a file. |
270 EXPECT_EQ(base::PLATFORM_FILE_ERROR_INVALID_OPERATION, | 270 EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
271 NativeFileUtil::CopyOrMoveFile( | 271 NativeFileUtil::CopyOrMoveFile( |
272 from_file, dir, FileSystemOperation::OPTION_NONE, nosync)); | 272 from_file, dir, FileSystemOperation::OPTION_NONE, nosync)); |
273 // Destination's parent doesn't exist. | 273 // Destination's parent doesn't exist. |
274 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_FOUND, | 274 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
275 NativeFileUtil::CopyOrMoveFile( | 275 NativeFileUtil::CopyOrMoveFile( |
276 from_file, Path("nodir").AppendASCII("file"), | 276 from_file, Path("nodir").AppendASCII("file"), |
277 FileSystemOperation::OPTION_NONE, nosync)); | 277 FileSystemOperation::OPTION_NONE, nosync)); |
278 // Destination's parent is a file. | 278 // Destination's parent is a file. |
279 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_FOUND, | 279 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
280 NativeFileUtil::CopyOrMoveFile( | 280 NativeFileUtil::CopyOrMoveFile( |
281 from_file, Path("tofile1").AppendASCII("file"), | 281 from_file, Path("tofile1").AppendASCII("file"), |
282 FileSystemOperation::OPTION_NONE, nosync)); | 282 FileSystemOperation::OPTION_NONE, nosync)); |
283 } | 283 } |
284 | 284 |
285 TEST_F(NativeFileUtilTest, MoveFile) { | 285 TEST_F(NativeFileUtilTest, MoveFile) { |
286 base::FilePath from_file = Path("fromfile"); | 286 base::FilePath from_file = Path("fromfile"); |
287 base::FilePath to_file = Path("tofile"); | 287 base::FilePath to_file = Path("tofile"); |
288 const NativeFileUtil::CopyOrMoveMode move = NativeFileUtil::MOVE; | 288 const NativeFileUtil::CopyOrMoveMode move = NativeFileUtil::MOVE; |
289 bool created = false; | 289 bool created = false; |
290 ASSERT_EQ(base::PLATFORM_FILE_OK, | 290 ASSERT_EQ(base::File::FILE_OK, |
291 NativeFileUtil::EnsureFileExists(from_file, &created)); | 291 NativeFileUtil::EnsureFileExists(from_file, &created)); |
292 ASSERT_TRUE(created); | 292 ASSERT_TRUE(created); |
293 | 293 |
294 ASSERT_EQ(base::PLATFORM_FILE_OK, NativeFileUtil::Truncate(from_file, 1020)); | 294 ASSERT_EQ(base::File::FILE_OK, NativeFileUtil::Truncate(from_file, 1020)); |
295 | 295 |
296 EXPECT_TRUE(FileExists(from_file)); | 296 EXPECT_TRUE(FileExists(from_file)); |
297 EXPECT_EQ(1020, GetSize(from_file)); | 297 EXPECT_EQ(1020, GetSize(from_file)); |
298 | 298 |
299 ASSERT_EQ(base::PLATFORM_FILE_OK, | 299 ASSERT_EQ(base::File::FILE_OK, |
300 NativeFileUtil::CopyOrMoveFile( | 300 NativeFileUtil::CopyOrMoveFile( |
301 from_file, to_file, FileSystemOperation::OPTION_NONE, move)); | 301 from_file, to_file, FileSystemOperation::OPTION_NONE, move)); |
302 | 302 |
303 EXPECT_FALSE(FileExists(from_file)); | 303 EXPECT_FALSE(FileExists(from_file)); |
304 EXPECT_TRUE(FileExists(to_file)); | 304 EXPECT_TRUE(FileExists(to_file)); |
305 EXPECT_EQ(1020, GetSize(to_file)); | 305 EXPECT_EQ(1020, GetSize(to_file)); |
306 | 306 |
307 ASSERT_EQ(base::PLATFORM_FILE_OK, | 307 ASSERT_EQ(base::File::FILE_OK, |
308 NativeFileUtil::EnsureFileExists(from_file, &created)); | 308 NativeFileUtil::EnsureFileExists(from_file, &created)); |
309 ASSERT_TRUE(FileExists(from_file)); | 309 ASSERT_TRUE(FileExists(from_file)); |
310 ASSERT_EQ(base::PLATFORM_FILE_OK, NativeFileUtil::Truncate(from_file, 1020)); | 310 ASSERT_EQ(base::File::FILE_OK, NativeFileUtil::Truncate(from_file, 1020)); |
311 | 311 |
312 base::FilePath dir = Path("dir"); | 312 base::FilePath dir = Path("dir"); |
313 ASSERT_EQ(base::PLATFORM_FILE_OK, | 313 ASSERT_EQ(base::File::FILE_OK, |
314 NativeFileUtil::CreateDirectory(dir, false, false)); | 314 NativeFileUtil::CreateDirectory(dir, false, false)); |
315 ASSERT_TRUE(base::DirectoryExists(dir)); | 315 ASSERT_TRUE(base::DirectoryExists(dir)); |
316 base::FilePath to_dir_file = dir.AppendASCII("file"); | 316 base::FilePath to_dir_file = dir.AppendASCII("file"); |
317 ASSERT_EQ(base::PLATFORM_FILE_OK, | 317 ASSERT_EQ(base::File::FILE_OK, |
318 NativeFileUtil::CopyOrMoveFile( | 318 NativeFileUtil::CopyOrMoveFile( |
319 from_file, to_dir_file, | 319 from_file, to_dir_file, |
320 FileSystemOperation::OPTION_NONE, move)); | 320 FileSystemOperation::OPTION_NONE, move)); |
321 EXPECT_FALSE(FileExists(from_file)); | 321 EXPECT_FALSE(FileExists(from_file)); |
322 EXPECT_TRUE(FileExists(to_dir_file)); | 322 EXPECT_TRUE(FileExists(to_dir_file)); |
323 EXPECT_EQ(1020, GetSize(to_dir_file)); | 323 EXPECT_EQ(1020, GetSize(to_dir_file)); |
324 | 324 |
325 // Following is error checking. | 325 // Following is error checking. |
326 // Source doesn't exist. | 326 // Source doesn't exist. |
327 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_FOUND, | 327 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
328 NativeFileUtil::CopyOrMoveFile( | 328 NativeFileUtil::CopyOrMoveFile( |
329 Path("nonexists"), Path("file"), | 329 Path("nonexists"), Path("file"), |
330 FileSystemOperation::OPTION_NONE, move)); | 330 FileSystemOperation::OPTION_NONE, move)); |
331 | 331 |
332 // Source is not a file. | 332 // Source is not a file. |
333 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_A_FILE, | 333 EXPECT_EQ(base::File::FILE_ERROR_NOT_A_FILE, |
334 NativeFileUtil::CopyOrMoveFile( | 334 NativeFileUtil::CopyOrMoveFile( |
335 dir, Path("file"), FileSystemOperation::OPTION_NONE, move)); | 335 dir, Path("file"), FileSystemOperation::OPTION_NONE, move)); |
336 ASSERT_EQ(base::PLATFORM_FILE_OK, | 336 ASSERT_EQ(base::File::FILE_OK, |
337 NativeFileUtil::EnsureFileExists(from_file, &created)); | 337 NativeFileUtil::EnsureFileExists(from_file, &created)); |
338 ASSERT_TRUE(FileExists(from_file)); | 338 ASSERT_TRUE(FileExists(from_file)); |
339 // Destination is not a file. | 339 // Destination is not a file. |
340 EXPECT_EQ(base::PLATFORM_FILE_ERROR_INVALID_OPERATION, | 340 EXPECT_EQ(base::File::FILE_ERROR_INVALID_OPERATION, |
341 NativeFileUtil::CopyOrMoveFile( | 341 NativeFileUtil::CopyOrMoveFile( |
342 from_file, dir, FileSystemOperation::OPTION_NONE, move)); | 342 from_file, dir, FileSystemOperation::OPTION_NONE, move)); |
343 | 343 |
344 ASSERT_EQ(base::PLATFORM_FILE_OK, | 344 ASSERT_EQ(base::File::FILE_OK, |
345 NativeFileUtil::EnsureFileExists(from_file, &created)); | 345 NativeFileUtil::EnsureFileExists(from_file, &created)); |
346 ASSERT_TRUE(FileExists(from_file)); | 346 ASSERT_TRUE(FileExists(from_file)); |
347 // Destination's parent doesn't exist. | 347 // Destination's parent doesn't exist. |
348 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_FOUND, | 348 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
349 NativeFileUtil::CopyOrMoveFile( | 349 NativeFileUtil::CopyOrMoveFile( |
350 from_file, Path("nodir").AppendASCII("file"), | 350 from_file, Path("nodir").AppendASCII("file"), |
351 FileSystemOperation::OPTION_NONE, move)); | 351 FileSystemOperation::OPTION_NONE, move)); |
352 // Destination's parent is a file. | 352 // Destination's parent is a file. |
353 EXPECT_EQ(base::PLATFORM_FILE_ERROR_NOT_FOUND, | 353 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, |
354 NativeFileUtil::CopyOrMoveFile( | 354 NativeFileUtil::CopyOrMoveFile( |
355 from_file, Path("tofile1").AppendASCII("file"), | 355 from_file, Path("tofile1").AppendASCII("file"), |
356 FileSystemOperation::OPTION_NONE, move)); | 356 FileSystemOperation::OPTION_NONE, move)); |
357 } | 357 } |
358 | 358 |
359 TEST_F(NativeFileUtilTest, PreserveLastModified) { | 359 TEST_F(NativeFileUtilTest, PreserveLastModified) { |
360 base::FilePath from_file = Path("fromfile"); | 360 base::FilePath from_file = Path("fromfile"); |
361 base::FilePath to_file1 = Path("tofile1"); | 361 base::FilePath to_file1 = Path("tofile1"); |
362 base::FilePath to_file2 = Path("tofile2"); | 362 base::FilePath to_file2 = Path("tofile2"); |
363 base::FilePath to_file3 = Path("tofile3"); | 363 base::FilePath to_file3 = Path("tofile3"); |
364 bool created = false; | 364 bool created = false; |
365 ASSERT_EQ(base::PLATFORM_FILE_OK, | 365 ASSERT_EQ(base::File::FILE_OK, |
366 NativeFileUtil::EnsureFileExists(from_file, &created)); | 366 NativeFileUtil::EnsureFileExists(from_file, &created)); |
367 ASSERT_TRUE(created); | 367 ASSERT_TRUE(created); |
368 EXPECT_TRUE(FileExists(from_file)); | 368 EXPECT_TRUE(FileExists(from_file)); |
369 | 369 |
370 base::PlatformFileInfo file_info1; | 370 base::File::Info file_info1; |
371 ASSERT_EQ(base::PLATFORM_FILE_OK, | 371 ASSERT_EQ(base::File::FILE_OK, |
372 NativeFileUtil::GetFileInfo(from_file, &file_info1)); | 372 NativeFileUtil::GetFileInfo(from_file, &file_info1)); |
373 | 373 |
374 // Test for copy (nosync). | 374 // Test for copy (nosync). |
375 ASSERT_EQ(base::PLATFORM_FILE_OK, | 375 ASSERT_EQ(base::File::FILE_OK, |
376 NativeFileUtil::CopyOrMoveFile( | 376 NativeFileUtil::CopyOrMoveFile( |
377 from_file, to_file1, | 377 from_file, to_file1, |
378 FileSystemOperation::OPTION_PRESERVE_LAST_MODIFIED, | 378 FileSystemOperation::OPTION_PRESERVE_LAST_MODIFIED, |
379 NativeFileUtil::COPY_NOSYNC)); | 379 NativeFileUtil::COPY_NOSYNC)); |
380 | 380 |
381 base::PlatformFileInfo file_info2; | 381 base::File::Info file_info2; |
382 ASSERT_TRUE(FileExists(to_file1)); | 382 ASSERT_TRUE(FileExists(to_file1)); |
383 ASSERT_EQ(base::PLATFORM_FILE_OK, | 383 ASSERT_EQ(base::File::FILE_OK, |
384 NativeFileUtil::GetFileInfo(to_file1, &file_info2)); | 384 NativeFileUtil::GetFileInfo(to_file1, &file_info2)); |
385 EXPECT_EQ(file_info1.last_modified, file_info2.last_modified); | 385 EXPECT_EQ(file_info1.last_modified, file_info2.last_modified); |
386 | 386 |
387 // Test for copy (sync). | 387 // Test for copy (sync). |
388 ASSERT_EQ(base::PLATFORM_FILE_OK, | 388 ASSERT_EQ(base::File::FILE_OK, |
389 NativeFileUtil::CopyOrMoveFile( | 389 NativeFileUtil::CopyOrMoveFile( |
390 from_file, to_file2, | 390 from_file, to_file2, |
391 FileSystemOperation::OPTION_PRESERVE_LAST_MODIFIED, | 391 FileSystemOperation::OPTION_PRESERVE_LAST_MODIFIED, |
392 NativeFileUtil::COPY_SYNC)); | 392 NativeFileUtil::COPY_SYNC)); |
393 | 393 |
394 ASSERT_TRUE(FileExists(to_file2)); | 394 ASSERT_TRUE(FileExists(to_file2)); |
395 ASSERT_EQ(base::PLATFORM_FILE_OK, | 395 ASSERT_EQ(base::File::FILE_OK, |
396 NativeFileUtil::GetFileInfo(to_file1, &file_info2)); | 396 NativeFileUtil::GetFileInfo(to_file1, &file_info2)); |
397 EXPECT_EQ(file_info1.last_modified, file_info2.last_modified); | 397 EXPECT_EQ(file_info1.last_modified, file_info2.last_modified); |
398 | 398 |
399 // Test for move. | 399 // Test for move. |
400 ASSERT_EQ(base::PLATFORM_FILE_OK, | 400 ASSERT_EQ(base::File::FILE_OK, |
401 NativeFileUtil::CopyOrMoveFile( | 401 NativeFileUtil::CopyOrMoveFile( |
402 from_file, to_file3, | 402 from_file, to_file3, |
403 FileSystemOperation::OPTION_PRESERVE_LAST_MODIFIED, | 403 FileSystemOperation::OPTION_PRESERVE_LAST_MODIFIED, |
404 NativeFileUtil::MOVE)); | 404 NativeFileUtil::MOVE)); |
405 | 405 |
406 ASSERT_TRUE(FileExists(to_file3)); | 406 ASSERT_TRUE(FileExists(to_file3)); |
407 ASSERT_EQ(base::PLATFORM_FILE_OK, | 407 ASSERT_EQ(base::File::FILE_OK, |
408 NativeFileUtil::GetFileInfo(to_file2, &file_info2)); | 408 NativeFileUtil::GetFileInfo(to_file2, &file_info2)); |
409 EXPECT_EQ(file_info1.last_modified, file_info2.last_modified); | 409 EXPECT_EQ(file_info1.last_modified, file_info2.last_modified); |
410 } | 410 } |
411 | 411 |
412 } // namespace fileapi | 412 } // namespace fileapi |
OLD | NEW |