Chromium Code Reviews| OLD | NEW |
|---|---|
| 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/chromeos/file_system_provider/fileapi/file_stream_reade r.h" | 5 #include "chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reade r.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/files/file.h" | 10 #include "base/files/file.h" |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 94 ServiceFactory::GetInstance()->SetTestingFactory(profile_, &CreateService); | 94 ServiceFactory::GetInstance()->SetTestingFactory(profile_, &CreateService); |
| 95 Service* service = Service::Get(profile_); // Owned by its factory. | 95 Service* service = Service::Get(profile_); // Owned by its factory. |
| 96 service->SetFileSystemFactoryForTesting( | 96 service->SetFileSystemFactoryForTesting( |
| 97 base::Bind(&FakeProvidedFileSystem::Create)); | 97 base::Bind(&FakeProvidedFileSystem::Create)); |
| 98 | 98 |
| 99 const bool result = service->MountFileSystem(kExtensionId, | 99 const bool result = service->MountFileSystem(kExtensionId, |
| 100 kFileSystemId, | 100 kFileSystemId, |
| 101 "Testing File System", | 101 "Testing File System", |
| 102 false /* writable */); | 102 false /* writable */); |
| 103 ASSERT_TRUE(result); | 103 ASSERT_TRUE(result); |
| 104 FakeProvidedFileSystem* provided_file_system = | |
|
hirono
2014/07/16 06:30:00
nit: FakeProvidedFileSystem* const
| |
| 105 static_cast<FakeProvidedFileSystem*>( | |
| 106 service->GetProvidedFileSystem(kExtensionId, kFileSystemId)); | |
| 107 DCHECK(provided_file_system); | |
| 108 ASSERT_TRUE(provided_file_system->GetEntry( | |
| 109 base::FilePath::FromUTF8Unsafe(kFakeFilePath), &fake_file_)); | |
| 104 const ProvidedFileSystemInfo& file_system_info = | 110 const ProvidedFileSystemInfo& file_system_info = |
| 105 service->GetProvidedFileSystem(kExtensionId, kFileSystemId) | 111 service->GetProvidedFileSystem(kExtensionId, kFileSystemId) |
| 106 ->GetFileSystemInfo(); | 112 ->GetFileSystemInfo(); |
| 107 const std::string mount_point_name = | 113 const std::string mount_point_name = |
| 108 file_system_info.mount_path().BaseName().AsUTF8Unsafe(); | 114 file_system_info.mount_path().BaseName().AsUTF8Unsafe(); |
| 109 | 115 |
| 110 file_url_ = CreateFileSystemURL( | 116 file_url_ = CreateFileSystemURL( |
| 111 mount_point_name, base::FilePath::FromUTF8Unsafe(kFakeFilePath + 1)); | 117 mount_point_name, base::FilePath::FromUTF8Unsafe(kFakeFilePath + 1)); |
| 112 ASSERT_TRUE(file_url_.is_valid()); | 118 ASSERT_TRUE(file_url_.is_valid()); |
| 113 wrong_file_url_ = CreateFileSystemURL( | 119 wrong_file_url_ = CreateFileSystemURL( |
| 114 mount_point_name, base::FilePath::FromUTF8Unsafe("im-not-here.txt")); | 120 mount_point_name, base::FilePath::FromUTF8Unsafe("im-not-here.txt")); |
| 115 ASSERT_TRUE(wrong_file_url_.is_valid()); | 121 ASSERT_TRUE(wrong_file_url_.is_valid()); |
| 116 | |
| 117 ASSERT_TRUE(base::Time::FromString(kFakeFileModificationTime, | |
| 118 &file_modification_time_)); | |
| 119 } | 122 } |
| 120 | 123 |
| 121 virtual void TearDown() OVERRIDE { | 124 virtual void TearDown() OVERRIDE { |
| 122 // Setting the testing factory to NULL will destroy the created service | 125 // Setting the testing factory to NULL will destroy the created service |
| 123 // associated with the testing profile. | 126 // associated with the testing profile. |
| 124 ServiceFactory::GetInstance()->SetTestingFactory(profile_, NULL); | 127 ServiceFactory::GetInstance()->SetTestingFactory(profile_, NULL); |
| 125 } | 128 } |
| 126 | 129 |
| 127 content::TestBrowserThreadBundle thread_bundle_; | 130 content::TestBrowserThreadBundle thread_bundle_; |
| 128 base::ScopedTempDir data_dir_; | 131 base::ScopedTempDir data_dir_; |
| 129 scoped_ptr<TestingProfileManager> profile_manager_; | 132 scoped_ptr<TestingProfileManager> profile_manager_; |
| 130 TestingProfile* profile_; // Owned by TestingProfileManager. | 133 TestingProfile* profile_; // Owned by TestingProfileManager. |
| 134 FakeEntry fake_file_; | |
| 131 fileapi::FileSystemURL file_url_; | 135 fileapi::FileSystemURL file_url_; |
| 132 fileapi::FileSystemURL wrong_file_url_; | 136 fileapi::FileSystemURL wrong_file_url_; |
| 133 base::Time file_modification_time_; | |
| 134 }; | 137 }; |
| 135 | 138 |
| 136 TEST_F(FileSystemProviderFileStreamReader, Read_AllAtOnce) { | 139 TEST_F(FileSystemProviderFileStreamReader, Read_AllAtOnce) { |
| 137 EventLogger logger; | 140 EventLogger logger; |
| 138 | 141 |
| 139 const int64 initial_offset = 0; | 142 const int64 initial_offset = 0; |
| 140 FileStreamReader reader( | 143 FileStreamReader reader( |
| 141 NULL, file_url_, initial_offset, file_modification_time_); | 144 NULL, file_url_, initial_offset, fake_file_.metadata.modification_time); |
| 142 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(kFakeFileSize)); | 145 scoped_refptr<net::IOBuffer> io_buffer( |
| 146 new net::IOBuffer(fake_file_.metadata.size)); | |
| 143 | 147 |
| 144 const int result = | 148 const int result = |
| 145 reader.Read(io_buffer.get(), | 149 reader.Read(io_buffer.get(), |
| 146 kFakeFileSize, | 150 fake_file_.metadata.size, |
| 147 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); | 151 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); |
| 148 EXPECT_EQ(net::ERR_IO_PENDING, result); | 152 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 149 base::RunLoop().RunUntilIdle(); | 153 base::RunLoop().RunUntilIdle(); |
| 150 | 154 |
| 151 ASSERT_EQ(1u, logger.results().size()); | 155 ASSERT_EQ(1u, logger.results().size()); |
| 152 EXPECT_LT(0, logger.results()[0]); | 156 EXPECT_LT(0, logger.results()[0]); |
| 153 EXPECT_EQ(kFakeFileSize, static_cast<size_t>(logger.results()[0])); | 157 EXPECT_EQ(fake_file_.metadata.size, logger.results()[0]); |
| 154 | 158 |
| 155 std::string buffer_as_string(io_buffer->data(), kFakeFileSize); | 159 std::string buffer_as_string(io_buffer->data(), fake_file_.metadata.size); |
| 156 EXPECT_EQ(kFakeFileText, buffer_as_string); | 160 EXPECT_EQ(fake_file_.contents, buffer_as_string); |
| 157 } | 161 } |
| 158 | 162 |
| 159 TEST_F(FileSystemProviderFileStreamReader, Read_WrongFile) { | 163 TEST_F(FileSystemProviderFileStreamReader, Read_WrongFile) { |
| 160 EventLogger logger; | 164 EventLogger logger; |
| 161 | 165 |
| 162 const int64 initial_offset = 0; | 166 const int64 initial_offset = 0; |
| 163 FileStreamReader reader( | 167 FileStreamReader reader(NULL, |
| 164 NULL, wrong_file_url_, initial_offset, file_modification_time_); | 168 wrong_file_url_, |
| 165 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(kFakeFileSize)); | 169 initial_offset, |
| 170 fake_file_.metadata.modification_time); | |
| 171 scoped_refptr<net::IOBuffer> io_buffer( | |
| 172 new net::IOBuffer(fake_file_.metadata.size)); | |
| 166 | 173 |
| 167 const int result = | 174 const int result = |
| 168 reader.Read(io_buffer.get(), | 175 reader.Read(io_buffer.get(), |
| 169 kFakeFileSize, | 176 fake_file_.metadata.size, |
| 170 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); | 177 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); |
| 171 EXPECT_EQ(net::ERR_IO_PENDING, result); | 178 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 172 base::RunLoop().RunUntilIdle(); | 179 base::RunLoop().RunUntilIdle(); |
| 173 | 180 |
| 174 ASSERT_EQ(1u, logger.results().size()); | 181 ASSERT_EQ(1u, logger.results().size()); |
| 175 EXPECT_EQ(net::ERR_FILE_NOT_FOUND, logger.results()[0]); | 182 EXPECT_EQ(net::ERR_FILE_NOT_FOUND, logger.results()[0]); |
| 176 } | 183 } |
| 177 | 184 |
| 178 TEST_F(FileSystemProviderFileStreamReader, Read_InChunks) { | 185 TEST_F(FileSystemProviderFileStreamReader, Read_InChunks) { |
| 179 EventLogger logger; | 186 EventLogger logger; |
| 180 | 187 |
| 181 const int64 initial_offset = 0; | 188 const int64 initial_offset = 0; |
| 182 FileStreamReader reader( | 189 FileStreamReader reader( |
| 183 NULL, file_url_, initial_offset, file_modification_time_); | 190 NULL, file_url_, initial_offset, fake_file_.metadata.modification_time); |
| 184 | 191 |
| 185 for (size_t offset = 0; offset < kFakeFileSize; ++offset) { | 192 for (int64 offset = 0; offset < fake_file_.metadata.size; ++offset) { |
| 186 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(1)); | 193 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(1)); |
| 187 const int result = | 194 const int result = |
| 188 reader.Read(io_buffer.get(), | 195 reader.Read(io_buffer.get(), |
| 189 1, | 196 1, |
| 190 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); | 197 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); |
| 191 EXPECT_EQ(net::ERR_IO_PENDING, result); | 198 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 192 base::RunLoop().RunUntilIdle(); | 199 base::RunLoop().RunUntilIdle(); |
| 193 ASSERT_EQ(offset + 1u, logger.results().size()); | 200 ASSERT_EQ(offset + 1, static_cast<int64>(logger.results().size())); |
| 194 EXPECT_EQ(1, logger.results()[offset]); | 201 EXPECT_EQ(1, logger.results()[offset]); |
| 195 EXPECT_EQ(kFakeFileText[offset], io_buffer->data()[0]); | 202 EXPECT_EQ(fake_file_.contents[offset], io_buffer->data()[0]); |
| 196 } | 203 } |
| 197 } | 204 } |
| 198 | 205 |
| 199 TEST_F(FileSystemProviderFileStreamReader, Read_Slice) { | 206 TEST_F(FileSystemProviderFileStreamReader, Read_Slice) { |
| 200 EventLogger logger; | 207 EventLogger logger; |
| 201 | 208 |
| 202 // Trim first 3 and last 3 characters. | 209 // Trim first 3 and last 3 characters. |
| 203 const int64 initial_offset = 3; | 210 const int64 initial_offset = 3; |
| 204 const int length = static_cast<int>(kFakeFileSize) - initial_offset - 3; | 211 const int length = fake_file_.metadata.size - initial_offset - 3; |
| 205 ASSERT_GT(kFakeFileSize, static_cast<size_t>(initial_offset)); | 212 ASSERT_GT(fake_file_.metadata.size, initial_offset); |
| 206 ASSERT_LT(0, length); | 213 ASSERT_LT(0, length); |
| 207 | 214 |
| 208 FileStreamReader reader( | 215 FileStreamReader reader( |
| 209 NULL, file_url_, initial_offset, file_modification_time_); | 216 NULL, file_url_, initial_offset, fake_file_.metadata.modification_time); |
| 210 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(length)); | 217 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(length)); |
| 211 | 218 |
| 212 const int result = | 219 const int result = |
| 213 reader.Read(io_buffer.get(), | 220 reader.Read(io_buffer.get(), |
| 214 length, | 221 length, |
| 215 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); | 222 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); |
| 216 EXPECT_EQ(net::ERR_IO_PENDING, result); | 223 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 217 base::RunLoop().RunUntilIdle(); | 224 base::RunLoop().RunUntilIdle(); |
| 218 | 225 |
| 219 ASSERT_EQ(1u, logger.results().size()); | 226 ASSERT_EQ(1u, logger.results().size()); |
| 220 EXPECT_EQ(length, logger.results()[0]); | 227 EXPECT_EQ(length, logger.results()[0]); |
| 221 | 228 |
| 222 std::string buffer_as_string(io_buffer->data(), length); | 229 std::string buffer_as_string(io_buffer->data(), length); |
| 223 std::string expected_buffer(kFakeFileText + initial_offset, length); | 230 std::string expected_buffer(fake_file_.contents.data() + initial_offset, |
| 231 length); | |
| 224 EXPECT_EQ(expected_buffer, buffer_as_string); | 232 EXPECT_EQ(expected_buffer, buffer_as_string); |
| 225 } | 233 } |
| 226 | 234 |
| 227 TEST_F(FileSystemProviderFileStreamReader, Read_Beyond) { | 235 TEST_F(FileSystemProviderFileStreamReader, Read_Beyond) { |
| 228 EventLogger logger; | 236 EventLogger logger; |
| 229 | 237 |
| 230 // Request reading 1KB more than available. | 238 // Request reading 1KB more than available. |
| 231 const int64 initial_offset = 0; | 239 const int64 initial_offset = 0; |
| 232 const int length = static_cast<int>(kFakeFileSize) + 1024; | 240 const int length = fake_file_.metadata.size + 1024; |
| 233 | 241 |
| 234 FileStreamReader reader( | 242 FileStreamReader reader( |
| 235 NULL, file_url_, initial_offset, file_modification_time_); | 243 NULL, file_url_, initial_offset, fake_file_.metadata.modification_time); |
| 236 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(length)); | 244 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(length)); |
| 237 | 245 |
| 238 const int result = | 246 const int result = |
| 239 reader.Read(io_buffer.get(), | 247 reader.Read(io_buffer.get(), |
| 240 length, | 248 length, |
| 241 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); | 249 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); |
| 242 EXPECT_EQ(net::ERR_IO_PENDING, result); | 250 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 243 base::RunLoop().RunUntilIdle(); | 251 base::RunLoop().RunUntilIdle(); |
| 244 | 252 |
| 245 ASSERT_EQ(1u, logger.results().size()); | 253 ASSERT_EQ(1u, logger.results().size()); |
| 246 EXPECT_LT(0, logger.results()[0]); | 254 EXPECT_LT(0, logger.results()[0]); |
| 247 EXPECT_EQ(kFakeFileSize, static_cast<size_t>(logger.results()[0])); | 255 EXPECT_EQ(fake_file_.metadata.size, logger.results()[0]); |
| 248 | 256 |
| 249 std::string buffer_as_string(io_buffer->data(), kFakeFileSize); | 257 std::string buffer_as_string(io_buffer->data(), fake_file_.metadata.size); |
| 250 EXPECT_EQ(kFakeFileText, buffer_as_string); | 258 EXPECT_EQ(fake_file_.contents, buffer_as_string); |
| 251 } | 259 } |
| 252 | 260 |
| 253 TEST_F(FileSystemProviderFileStreamReader, Read_ModifiedFile) { | 261 TEST_F(FileSystemProviderFileStreamReader, Read_ModifiedFile) { |
| 254 EventLogger logger; | 262 EventLogger logger; |
| 255 | 263 |
| 256 const int64 initial_offset = 0; | 264 const int64 initial_offset = 0; |
| 257 FileStreamReader reader(NULL, file_url_, initial_offset, base::Time::Max()); | 265 FileStreamReader reader(NULL, file_url_, initial_offset, base::Time::Max()); |
| 258 | 266 |
| 259 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(kFakeFileSize)); | 267 scoped_refptr<net::IOBuffer> io_buffer( |
| 268 new net::IOBuffer(fake_file_.metadata.size)); | |
| 260 const int result = | 269 const int result = |
| 261 reader.Read(io_buffer.get(), | 270 reader.Read(io_buffer.get(), |
| 262 kFakeFileSize, | 271 fake_file_.metadata.size, |
| 263 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); | 272 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); |
| 264 | 273 |
| 265 EXPECT_EQ(net::ERR_IO_PENDING, result); | 274 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 266 base::RunLoop().RunUntilIdle(); | 275 base::RunLoop().RunUntilIdle(); |
| 267 | 276 |
| 268 ASSERT_EQ(1u, logger.results().size()); | 277 ASSERT_EQ(1u, logger.results().size()); |
| 269 EXPECT_EQ(net::ERR_UPLOAD_FILE_CHANGED, logger.results()[0]); | 278 EXPECT_EQ(net::ERR_UPLOAD_FILE_CHANGED, logger.results()[0]); |
| 270 } | 279 } |
| 271 | 280 |
| 272 TEST_F(FileSystemProviderFileStreamReader, Read_ExpectedModificationTimeNull) { | 281 TEST_F(FileSystemProviderFileStreamReader, Read_ExpectedModificationTimeNull) { |
| 273 EventLogger logger; | 282 EventLogger logger; |
| 274 | 283 |
| 275 const int64 initial_offset = 0; | 284 const int64 initial_offset = 0; |
| 276 FileStreamReader reader(NULL, file_url_, initial_offset, base::Time()); | 285 FileStreamReader reader(NULL, file_url_, initial_offset, base::Time()); |
| 277 | 286 |
| 278 scoped_refptr<net::IOBuffer> io_buffer(new net::IOBuffer(kFakeFileSize)); | 287 scoped_refptr<net::IOBuffer> io_buffer( |
| 288 new net::IOBuffer(fake_file_.metadata.size)); | |
| 279 const int result = | 289 const int result = |
| 280 reader.Read(io_buffer.get(), | 290 reader.Read(io_buffer.get(), |
| 281 kFakeFileSize, | 291 fake_file_.metadata.size, |
| 282 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); | 292 base::Bind(&EventLogger::OnRead, logger.GetWeakPtr())); |
| 283 | 293 |
| 284 EXPECT_EQ(net::ERR_IO_PENDING, result); | 294 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 285 base::RunLoop().RunUntilIdle(); | 295 base::RunLoop().RunUntilIdle(); |
| 286 | 296 |
| 287 ASSERT_EQ(1u, logger.results().size()); | 297 ASSERT_EQ(1u, logger.results().size()); |
| 288 EXPECT_EQ(kFakeFileSize, static_cast<size_t>(logger.results()[0])); | 298 EXPECT_EQ(fake_file_.metadata.size, logger.results()[0]); |
| 289 | 299 |
| 290 std::string buffer_as_string(io_buffer->data(), kFakeFileSize); | 300 std::string buffer_as_string(io_buffer->data(), fake_file_.metadata.size); |
| 291 EXPECT_EQ(kFakeFileText, buffer_as_string); | 301 EXPECT_EQ(fake_file_.contents, buffer_as_string); |
| 292 } | 302 } |
| 293 | 303 |
| 294 TEST_F(FileSystemProviderFileStreamReader, GetLength) { | 304 TEST_F(FileSystemProviderFileStreamReader, GetLength) { |
| 295 EventLogger logger; | 305 EventLogger logger; |
| 296 | 306 |
| 297 const int64 initial_offset = 0; | 307 const int64 initial_offset = 0; |
| 298 FileStreamReader reader( | 308 FileStreamReader reader( |
| 299 NULL, file_url_, initial_offset, file_modification_time_); | 309 NULL, file_url_, initial_offset, fake_file_.metadata.modification_time); |
| 300 | 310 |
| 301 const int result = reader.GetLength( | 311 const int result = reader.GetLength( |
| 302 base::Bind(&EventLogger::OnGetLength, logger.GetWeakPtr())); | 312 base::Bind(&EventLogger::OnGetLength, logger.GetWeakPtr())); |
| 303 EXPECT_EQ(net::ERR_IO_PENDING, result); | 313 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 304 base::RunLoop().RunUntilIdle(); | 314 base::RunLoop().RunUntilIdle(); |
| 305 | 315 |
| 306 ASSERT_EQ(1u, logger.results().size()); | 316 ASSERT_EQ(1u, logger.results().size()); |
| 307 EXPECT_LT(0, logger.results()[0]); | 317 EXPECT_LT(0, logger.results()[0]); |
| 308 EXPECT_EQ(kFakeFileSize, static_cast<size_t>(logger.results()[0])); | 318 EXPECT_EQ(fake_file_.metadata.size, logger.results()[0]); |
| 309 } | 319 } |
| 310 | 320 |
| 311 TEST_F(FileSystemProviderFileStreamReader, GetLength_WrongFile) { | 321 TEST_F(FileSystemProviderFileStreamReader, GetLength_WrongFile) { |
| 312 EventLogger logger; | 322 EventLogger logger; |
| 313 | 323 |
| 314 const int64 initial_offset = 0; | 324 const int64 initial_offset = 0; |
| 315 FileStreamReader reader( | 325 FileStreamReader reader(NULL, |
| 316 NULL, wrong_file_url_, initial_offset, file_modification_time_); | 326 wrong_file_url_, |
| 327 initial_offset, | |
| 328 fake_file_.metadata.modification_time); | |
| 317 | 329 |
| 318 const int result = reader.GetLength( | 330 const int result = reader.GetLength( |
| 319 base::Bind(&EventLogger::OnGetLength, logger.GetWeakPtr())); | 331 base::Bind(&EventLogger::OnGetLength, logger.GetWeakPtr())); |
| 320 EXPECT_EQ(net::ERR_IO_PENDING, result); | 332 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 321 base::RunLoop().RunUntilIdle(); | 333 base::RunLoop().RunUntilIdle(); |
| 322 | 334 |
| 323 ASSERT_EQ(1u, logger.results().size()); | 335 ASSERT_EQ(1u, logger.results().size()); |
| 324 EXPECT_EQ(net::ERR_FILE_NOT_FOUND, logger.results()[0]); | 336 EXPECT_EQ(net::ERR_FILE_NOT_FOUND, logger.results()[0]); |
| 325 } | 337 } |
| 326 | 338 |
| (...skipping 19 matching lines...) Expand all Loading... | |
| 346 const int64 initial_offset = 0; | 358 const int64 initial_offset = 0; |
| 347 FileStreamReader reader(NULL, file_url_, initial_offset, base::Time()); | 359 FileStreamReader reader(NULL, file_url_, initial_offset, base::Time()); |
| 348 | 360 |
| 349 const int result = reader.GetLength( | 361 const int result = reader.GetLength( |
| 350 base::Bind(&EventLogger::OnGetLength, logger.GetWeakPtr())); | 362 base::Bind(&EventLogger::OnGetLength, logger.GetWeakPtr())); |
| 351 EXPECT_EQ(net::ERR_IO_PENDING, result); | 363 EXPECT_EQ(net::ERR_IO_PENDING, result); |
| 352 base::RunLoop().RunUntilIdle(); | 364 base::RunLoop().RunUntilIdle(); |
| 353 | 365 |
| 354 ASSERT_EQ(1u, logger.results().size()); | 366 ASSERT_EQ(1u, logger.results().size()); |
| 355 EXPECT_LT(0, logger.results()[0]); | 367 EXPECT_LT(0, logger.results()[0]); |
| 356 EXPECT_EQ(kFakeFileSize, static_cast<size_t>(logger.results()[0])); | 368 EXPECT_EQ(fake_file_.metadata.size, logger.results()[0]); |
| 357 } | 369 } |
| 358 | 370 |
| 359 } // namespace file_system_provider | 371 } // namespace file_system_provider |
| 360 } // namespace chromeos | 372 } // namespace chromeos |
| OLD | NEW |