| 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/service.h" | 5 #include "chrome/browser/chromeos/file_system_provider/service.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 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 155 scoped_ptr<ScopedUserManagerEnabler> user_manager_enabler_; | 155 scoped_ptr<ScopedUserManagerEnabler> user_manager_enabler_; |
| 156 scoped_ptr<extensions::ExtensionRegistry> extension_registry_; | 156 scoped_ptr<extensions::ExtensionRegistry> extension_registry_; |
| 157 scoped_ptr<Service> service_; | 157 scoped_ptr<Service> service_; |
| 158 scoped_refptr<extensions::Extension> extension_; | 158 scoped_refptr<extensions::Extension> extension_; |
| 159 }; | 159 }; |
| 160 | 160 |
| 161 TEST_F(FileSystemProviderServiceTest, MountFileSystem) { | 161 TEST_F(FileSystemProviderServiceTest, MountFileSystem) { |
| 162 LoggingObserver observer; | 162 LoggingObserver observer; |
| 163 service_->AddObserver(&observer); | 163 service_->AddObserver(&observer); |
| 164 | 164 |
| 165 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 165 EXPECT_TRUE(service_->MountFileSystem( |
| 166 kFileSystemId, | 166 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 167 kDisplayName, | |
| 168 false /* writable */, | |
| 169 false /* supports_notify_tag */)); | |
| 170 | 167 |
| 171 ASSERT_EQ(1u, observer.mounts.size()); | 168 ASSERT_EQ(1u, observer.mounts.size()); |
| 172 EXPECT_EQ(kExtensionId, observer.mounts[0].file_system_info().extension_id()); | 169 EXPECT_EQ(kExtensionId, observer.mounts[0].file_system_info().extension_id()); |
| 173 EXPECT_EQ(kFileSystemId, | 170 EXPECT_EQ(kFileSystemId, |
| 174 observer.mounts[0].file_system_info().file_system_id()); | 171 observer.mounts[0].file_system_info().file_system_id()); |
| 175 base::FilePath expected_mount_path = | 172 base::FilePath expected_mount_path = |
| 176 util::GetMountPath(profile_, kExtensionId, kFileSystemId); | 173 util::GetMountPath(profile_, kExtensionId, kFileSystemId); |
| 177 EXPECT_EQ(expected_mount_path.AsUTF8Unsafe(), | 174 EXPECT_EQ(expected_mount_path.AsUTF8Unsafe(), |
| 178 observer.mounts[0].file_system_info().mount_path().AsUTF8Unsafe()); | 175 observer.mounts[0].file_system_info().mount_path().AsUTF8Unsafe()); |
| 179 EXPECT_EQ(kDisplayName, observer.mounts[0].file_system_info().display_name()); | 176 EXPECT_EQ(kDisplayName, observer.mounts[0].file_system_info().display_name()); |
| 180 EXPECT_FALSE(observer.mounts[0].file_system_info().writable()); | 177 EXPECT_FALSE(observer.mounts[0].file_system_info().writable()); |
| 181 EXPECT_FALSE(observer.mounts[0].file_system_info().supports_notify_tag()); | 178 EXPECT_FALSE(observer.mounts[0].file_system_info().supports_notify_tag()); |
| 182 EXPECT_EQ(base::File::FILE_OK, observer.mounts[0].error()); | 179 EXPECT_EQ(base::File::FILE_OK, observer.mounts[0].error()); |
| 183 ASSERT_EQ(0u, observer.unmounts.size()); | 180 ASSERT_EQ(0u, observer.unmounts.size()); |
| 184 | 181 |
| 185 std::vector<ProvidedFileSystemInfo> file_system_info_list = | 182 std::vector<ProvidedFileSystemInfo> file_system_info_list = |
| 186 service_->GetProvidedFileSystemInfoList(); | 183 service_->GetProvidedFileSystemInfoList(); |
| 187 ASSERT_EQ(1u, file_system_info_list.size()); | 184 ASSERT_EQ(1u, file_system_info_list.size()); |
| 188 | 185 |
| 189 service_->RemoveObserver(&observer); | 186 service_->RemoveObserver(&observer); |
| 190 } | 187 } |
| 191 | 188 |
| 192 TEST_F(FileSystemProviderServiceTest, | 189 TEST_F(FileSystemProviderServiceTest, |
| 193 MountFileSystem_WritableAndSupportsNotifyTag) { | 190 MountFileSystem_WritableAndSupportsNotifyTag) { |
| 194 LoggingObserver observer; | 191 LoggingObserver observer; |
| 195 service_->AddObserver(&observer); | 192 service_->AddObserver(&observer); |
| 196 | 193 |
| 197 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 194 MountOptions options(kFileSystemId, kDisplayName); |
| 198 kFileSystemId, | 195 options.writable = true; |
| 199 kDisplayName, | 196 options.supports_notify_tag = true; |
| 200 true /* writable */, | 197 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, options)); |
| 201 true /* supports_notify_tag */)); | |
| 202 | 198 |
| 203 ASSERT_EQ(1u, observer.mounts.size()); | 199 ASSERT_EQ(1u, observer.mounts.size()); |
| 204 EXPECT_TRUE(observer.mounts[0].file_system_info().writable()); | 200 EXPECT_TRUE(observer.mounts[0].file_system_info().writable()); |
| 205 EXPECT_TRUE(observer.mounts[0].file_system_info().supports_notify_tag()); | 201 EXPECT_TRUE(observer.mounts[0].file_system_info().supports_notify_tag()); |
| 206 ASSERT_EQ(0u, observer.unmounts.size()); | 202 ASSERT_EQ(0u, observer.unmounts.size()); |
| 207 std::vector<ProvidedFileSystemInfo> file_system_info_list = | 203 std::vector<ProvidedFileSystemInfo> file_system_info_list = |
| 208 service_->GetProvidedFileSystemInfoList(); | 204 service_->GetProvidedFileSystemInfoList(); |
| 209 ASSERT_EQ(1u, file_system_info_list.size()); | 205 ASSERT_EQ(1u, file_system_info_list.size()); |
| 210 | 206 |
| 211 service_->RemoveObserver(&observer); | 207 service_->RemoveObserver(&observer); |
| 212 } | 208 } |
| 213 | 209 |
| 214 TEST_F(FileSystemProviderServiceTest, MountFileSystem_UniqueIds) { | 210 TEST_F(FileSystemProviderServiceTest, MountFileSystem_UniqueIds) { |
| 215 LoggingObserver observer; | 211 LoggingObserver observer; |
| 216 service_->AddObserver(&observer); | 212 service_->AddObserver(&observer); |
| 217 | 213 |
| 218 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 214 EXPECT_TRUE(service_->MountFileSystem( |
| 219 kFileSystemId, | 215 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 220 kDisplayName, | 216 EXPECT_FALSE(service_->MountFileSystem( |
| 221 false /* writable */, | 217 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 222 false /* supports_notify_tag */)); | |
| 223 EXPECT_FALSE(service_->MountFileSystem(kExtensionId, | |
| 224 kFileSystemId, | |
| 225 kDisplayName, | |
| 226 false /* writable */, | |
| 227 false /* supports_notify_tag */)); | |
| 228 | 218 |
| 229 ASSERT_EQ(2u, observer.mounts.size()); | 219 ASSERT_EQ(2u, observer.mounts.size()); |
| 230 EXPECT_EQ(base::File::FILE_OK, observer.mounts[0].error()); | 220 EXPECT_EQ(base::File::FILE_OK, observer.mounts[0].error()); |
| 231 EXPECT_EQ(base::File::FILE_ERROR_EXISTS, observer.mounts[1].error()); | 221 EXPECT_EQ(base::File::FILE_ERROR_EXISTS, observer.mounts[1].error()); |
| 232 | 222 |
| 233 std::vector<ProvidedFileSystemInfo> file_system_info_list = | 223 std::vector<ProvidedFileSystemInfo> file_system_info_list = |
| 234 service_->GetProvidedFileSystemInfoList(); | 224 service_->GetProvidedFileSystemInfoList(); |
| 235 ASSERT_EQ(1u, file_system_info_list.size()); | 225 ASSERT_EQ(1u, file_system_info_list.size()); |
| 236 | 226 |
| 237 service_->RemoveObserver(&observer); | 227 service_->RemoveObserver(&observer); |
| 238 } | 228 } |
| 239 | 229 |
| 240 TEST_F(FileSystemProviderServiceTest, MountFileSystem_StressTest) { | 230 TEST_F(FileSystemProviderServiceTest, MountFileSystem_StressTest) { |
| 241 LoggingObserver observer; | 231 LoggingObserver observer; |
| 242 service_->AddObserver(&observer); | 232 service_->AddObserver(&observer); |
| 243 | 233 |
| 244 const size_t kMaxFileSystems = 16; | 234 const size_t kMaxFileSystems = 16; |
| 245 for (size_t i = 0; i < kMaxFileSystems; ++i) { | 235 for (size_t i = 0; i < kMaxFileSystems; ++i) { |
| 246 const std::string file_system_id = | 236 const std::string file_system_id = |
| 247 std::string("test-") + base::IntToString(i); | 237 std::string("test-") + base::IntToString(i); |
| 248 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 238 EXPECT_TRUE(service_->MountFileSystem( |
| 249 file_system_id, | 239 kExtensionId, MountOptions(file_system_id, kDisplayName))); |
| 250 kDisplayName, | |
| 251 false /* writable */, | |
| 252 false /* supports_notify_tag */)); | |
| 253 } | 240 } |
| 254 ASSERT_EQ(kMaxFileSystems, observer.mounts.size()); | 241 ASSERT_EQ(kMaxFileSystems, observer.mounts.size()); |
| 255 | 242 |
| 256 // The next file system is out of limit, and registering it should fail. | 243 // The next file system is out of limit, and registering it should fail. |
| 257 EXPECT_FALSE(service_->MountFileSystem(kExtensionId, | 244 EXPECT_FALSE(service_->MountFileSystem( |
| 258 kFileSystemId, | 245 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 259 kDisplayName, | |
| 260 false /* writable */, | |
| 261 false /* supports_notify_tag */)); | |
| 262 | 246 |
| 263 ASSERT_EQ(kMaxFileSystems + 1, observer.mounts.size()); | 247 ASSERT_EQ(kMaxFileSystems + 1, observer.mounts.size()); |
| 264 EXPECT_EQ(base::File::FILE_ERROR_TOO_MANY_OPENED, | 248 EXPECT_EQ(base::File::FILE_ERROR_TOO_MANY_OPENED, |
| 265 observer.mounts[kMaxFileSystems].error()); | 249 observer.mounts[kMaxFileSystems].error()); |
| 266 | 250 |
| 267 std::vector<ProvidedFileSystemInfo> file_system_info_list = | 251 std::vector<ProvidedFileSystemInfo> file_system_info_list = |
| 268 service_->GetProvidedFileSystemInfoList(); | 252 service_->GetProvidedFileSystemInfoList(); |
| 269 ASSERT_EQ(kMaxFileSystems, file_system_info_list.size()); | 253 ASSERT_EQ(kMaxFileSystems, file_system_info_list.size()); |
| 270 | 254 |
| 271 service_->RemoveObserver(&observer); | 255 service_->RemoveObserver(&observer); |
| 272 } | 256 } |
| 273 | 257 |
| 274 TEST_F(FileSystemProviderServiceTest, UnmountFileSystem) { | 258 TEST_F(FileSystemProviderServiceTest, UnmountFileSystem) { |
| 275 LoggingObserver observer; | 259 LoggingObserver observer; |
| 276 service_->AddObserver(&observer); | 260 service_->AddObserver(&observer); |
| 277 | 261 |
| 278 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 262 EXPECT_TRUE(service_->MountFileSystem( |
| 279 kFileSystemId, | 263 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 280 kDisplayName, | |
| 281 false /* writable */, | |
| 282 false /* supports_notify_tag */)); | |
| 283 ASSERT_EQ(1u, observer.mounts.size()); | 264 ASSERT_EQ(1u, observer.mounts.size()); |
| 284 | 265 |
| 285 EXPECT_TRUE(service_->UnmountFileSystem( | 266 EXPECT_TRUE(service_->UnmountFileSystem( |
| 286 kExtensionId, kFileSystemId, Service::UNMOUNT_REASON_USER)); | 267 kExtensionId, kFileSystemId, Service::UNMOUNT_REASON_USER)); |
| 287 ASSERT_EQ(1u, observer.unmounts.size()); | 268 ASSERT_EQ(1u, observer.unmounts.size()); |
| 288 EXPECT_EQ(base::File::FILE_OK, observer.unmounts[0].error()); | 269 EXPECT_EQ(base::File::FILE_OK, observer.unmounts[0].error()); |
| 289 | 270 |
| 290 EXPECT_EQ(kExtensionId, | 271 EXPECT_EQ(kExtensionId, |
| 291 observer.unmounts[0].file_system_info().extension_id()); | 272 observer.unmounts[0].file_system_info().extension_id()); |
| 292 EXPECT_EQ(kFileSystemId, | 273 EXPECT_EQ(kFileSystemId, |
| 293 observer.unmounts[0].file_system_info().file_system_id()); | 274 observer.unmounts[0].file_system_info().file_system_id()); |
| 294 | 275 |
| 295 std::vector<ProvidedFileSystemInfo> file_system_info_list = | 276 std::vector<ProvidedFileSystemInfo> file_system_info_list = |
| 296 service_->GetProvidedFileSystemInfoList(); | 277 service_->GetProvidedFileSystemInfoList(); |
| 297 ASSERT_EQ(0u, file_system_info_list.size()); | 278 ASSERT_EQ(0u, file_system_info_list.size()); |
| 298 | 279 |
| 299 service_->RemoveObserver(&observer); | 280 service_->RemoveObserver(&observer); |
| 300 } | 281 } |
| 301 | 282 |
| 302 TEST_F(FileSystemProviderServiceTest, UnmountFileSystem_OnExtensionUnload) { | 283 TEST_F(FileSystemProviderServiceTest, UnmountFileSystem_OnExtensionUnload) { |
| 303 LoggingObserver observer; | 284 LoggingObserver observer; |
| 304 service_->AddObserver(&observer); | 285 service_->AddObserver(&observer); |
| 305 | 286 |
| 306 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 287 EXPECT_TRUE(service_->MountFileSystem( |
| 307 kFileSystemId, | 288 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 308 kDisplayName, | |
| 309 false /* writable */, | |
| 310 false /* supports_notify_tag */)); | |
| 311 ASSERT_EQ(1u, observer.mounts.size()); | 289 ASSERT_EQ(1u, observer.mounts.size()); |
| 312 | 290 |
| 313 // Directly call the observer's method. | 291 // Directly call the observer's method. |
| 314 service_->OnExtensionUnloaded( | 292 service_->OnExtensionUnloaded( |
| 315 profile_, | 293 profile_, |
| 316 extension_.get(), | 294 extension_.get(), |
| 317 extensions::UnloadedExtensionInfo::REASON_DISABLE); | 295 extensions::UnloadedExtensionInfo::REASON_DISABLE); |
| 318 | 296 |
| 319 ASSERT_EQ(1u, observer.unmounts.size()); | 297 ASSERT_EQ(1u, observer.unmounts.size()); |
| 320 EXPECT_EQ(base::File::FILE_OK, observer.unmounts[0].error()); | 298 EXPECT_EQ(base::File::FILE_OK, observer.unmounts[0].error()); |
| 321 | 299 |
| 322 EXPECT_EQ(kExtensionId, | 300 EXPECT_EQ(kExtensionId, |
| 323 observer.unmounts[0].file_system_info().extension_id()); | 301 observer.unmounts[0].file_system_info().extension_id()); |
| 324 EXPECT_EQ(kFileSystemId, | 302 EXPECT_EQ(kFileSystemId, |
| 325 observer.unmounts[0].file_system_info().file_system_id()); | 303 observer.unmounts[0].file_system_info().file_system_id()); |
| 326 | 304 |
| 327 std::vector<ProvidedFileSystemInfo> file_system_info_list = | 305 std::vector<ProvidedFileSystemInfo> file_system_info_list = |
| 328 service_->GetProvidedFileSystemInfoList(); | 306 service_->GetProvidedFileSystemInfoList(); |
| 329 ASSERT_EQ(0u, file_system_info_list.size()); | 307 ASSERT_EQ(0u, file_system_info_list.size()); |
| 330 | 308 |
| 331 service_->RemoveObserver(&observer); | 309 service_->RemoveObserver(&observer); |
| 332 } | 310 } |
| 333 | 311 |
| 334 TEST_F(FileSystemProviderServiceTest, UnmountFileSystem_WrongExtensionId) { | 312 TEST_F(FileSystemProviderServiceTest, UnmountFileSystem_WrongExtensionId) { |
| 335 LoggingObserver observer; | 313 LoggingObserver observer; |
| 336 service_->AddObserver(&observer); | 314 service_->AddObserver(&observer); |
| 337 | 315 |
| 338 const std::string kWrongExtensionId = "helloworldhelloworldhelloworldhe"; | 316 const std::string kWrongExtensionId = "helloworldhelloworldhelloworldhe"; |
| 339 | 317 |
| 340 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 318 EXPECT_TRUE(service_->MountFileSystem( |
| 341 kFileSystemId, | 319 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 342 kDisplayName, | |
| 343 false /* writable */, | |
| 344 false /* supports_notify_tag */)); | |
| 345 ASSERT_EQ(1u, observer.mounts.size()); | 320 ASSERT_EQ(1u, observer.mounts.size()); |
| 346 ASSERT_EQ(1u, service_->GetProvidedFileSystemInfoList().size()); | 321 ASSERT_EQ(1u, service_->GetProvidedFileSystemInfoList().size()); |
| 347 | 322 |
| 348 EXPECT_FALSE(service_->UnmountFileSystem( | 323 EXPECT_FALSE(service_->UnmountFileSystem( |
| 349 kWrongExtensionId, kFileSystemId, Service::UNMOUNT_REASON_USER)); | 324 kWrongExtensionId, kFileSystemId, Service::UNMOUNT_REASON_USER)); |
| 350 ASSERT_EQ(1u, observer.unmounts.size()); | 325 ASSERT_EQ(1u, observer.unmounts.size()); |
| 351 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, observer.unmounts[0].error()); | 326 EXPECT_EQ(base::File::FILE_ERROR_NOT_FOUND, observer.unmounts[0].error()); |
| 352 ASSERT_EQ(1u, service_->GetProvidedFileSystemInfoList().size()); | 327 ASSERT_EQ(1u, service_->GetProvidedFileSystemInfoList().size()); |
| 353 | 328 |
| 354 std::vector<ProvidedFileSystemInfo> file_system_info_list = | 329 std::vector<ProvidedFileSystemInfo> file_system_info_list = |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 395 new_service->GetProvidedFileSystemInfoList(); | 370 new_service->GetProvidedFileSystemInfoList(); |
| 396 ASSERT_EQ(1u, file_system_info_list.size()); | 371 ASSERT_EQ(1u, file_system_info_list.size()); |
| 397 | 372 |
| 398 new_service->RemoveObserver(&observer); | 373 new_service->RemoveObserver(&observer); |
| 399 } | 374 } |
| 400 | 375 |
| 401 TEST_F(FileSystemProviderServiceTest, RememberFileSystem_OnMount) { | 376 TEST_F(FileSystemProviderServiceTest, RememberFileSystem_OnMount) { |
| 402 LoggingObserver observer; | 377 LoggingObserver observer; |
| 403 service_->AddObserver(&observer); | 378 service_->AddObserver(&observer); |
| 404 | 379 |
| 405 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 380 MountOptions options(kFileSystemId, kDisplayName); |
| 406 kFileSystemId, | 381 options.writable = true; |
| 407 kDisplayName, | 382 options.supports_notify_tag = true; |
| 408 true /* writable */, | 383 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, options)); |
| 409 true /* supports_notify_tag */)); | |
| 410 ASSERT_EQ(1u, observer.mounts.size()); | 384 ASSERT_EQ(1u, observer.mounts.size()); |
| 411 | 385 |
| 412 TestingPrefServiceSyncable* const pref_service = | 386 TestingPrefServiceSyncable* const pref_service = |
| 413 profile_->GetTestingPrefService(); | 387 profile_->GetTestingPrefService(); |
| 414 ASSERT_TRUE(pref_service); | 388 ASSERT_TRUE(pref_service); |
| 415 | 389 |
| 416 const base::DictionaryValue* const extensions = | 390 const base::DictionaryValue* const extensions = |
| 417 pref_service->GetDictionary(prefs::kFileSystemProviderMounted); | 391 pref_service->GetDictionary(prefs::kFileSystemProviderMounted); |
| 418 ASSERT_TRUE(extensions); | 392 ASSERT_TRUE(extensions); |
| 419 | 393 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 453 | 427 |
| 454 TEST_F(FileSystemProviderServiceTest, RememberFileSystem_OnUnmountOnShutdown) { | 428 TEST_F(FileSystemProviderServiceTest, RememberFileSystem_OnUnmountOnShutdown) { |
| 455 LoggingObserver observer; | 429 LoggingObserver observer; |
| 456 service_->AddObserver(&observer); | 430 service_->AddObserver(&observer); |
| 457 | 431 |
| 458 TestingPrefServiceSyncable* const pref_service = | 432 TestingPrefServiceSyncable* const pref_service = |
| 459 profile_->GetTestingPrefService(); | 433 profile_->GetTestingPrefService(); |
| 460 ASSERT_TRUE(pref_service); | 434 ASSERT_TRUE(pref_service); |
| 461 | 435 |
| 462 { | 436 { |
| 463 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 437 EXPECT_TRUE(service_->MountFileSystem( |
| 464 kFileSystemId, | 438 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 465 kDisplayName, | |
| 466 false /* writable */, | |
| 467 false /* supports_notify_tag */)); | |
| 468 ASSERT_EQ(1u, observer.mounts.size()); | 439 ASSERT_EQ(1u, observer.mounts.size()); |
| 469 | 440 |
| 470 const base::DictionaryValue* extensions = | 441 const base::DictionaryValue* extensions = |
| 471 pref_service->GetDictionary(prefs::kFileSystemProviderMounted); | 442 pref_service->GetDictionary(prefs::kFileSystemProviderMounted); |
| 472 ASSERT_TRUE(extensions); | 443 ASSERT_TRUE(extensions); |
| 473 | 444 |
| 474 const base::DictionaryValue* file_systems = NULL; | 445 const base::DictionaryValue* file_systems = NULL; |
| 475 ASSERT_TRUE(extensions->GetDictionaryWithoutPathExpansion(kExtensionId, | 446 ASSERT_TRUE(extensions->GetDictionaryWithoutPathExpansion(kExtensionId, |
| 476 &file_systems)); | 447 &file_systems)); |
| 477 EXPECT_EQ(1u, file_systems->size()); | 448 EXPECT_EQ(1u, file_systems->size()); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 496 | 467 |
| 497 TEST_F(FileSystemProviderServiceTest, RememberFileSystem_OnUnmountByUser) { | 468 TEST_F(FileSystemProviderServiceTest, RememberFileSystem_OnUnmountByUser) { |
| 498 LoggingObserver observer; | 469 LoggingObserver observer; |
| 499 service_->AddObserver(&observer); | 470 service_->AddObserver(&observer); |
| 500 | 471 |
| 501 TestingPrefServiceSyncable* const pref_service = | 472 TestingPrefServiceSyncable* const pref_service = |
| 502 profile_->GetTestingPrefService(); | 473 profile_->GetTestingPrefService(); |
| 503 ASSERT_TRUE(pref_service); | 474 ASSERT_TRUE(pref_service); |
| 504 | 475 |
| 505 { | 476 { |
| 506 EXPECT_TRUE(service_->MountFileSystem(kExtensionId, | 477 EXPECT_TRUE(service_->MountFileSystem( |
| 507 kFileSystemId, | 478 kExtensionId, MountOptions(kFileSystemId, kDisplayName))); |
| 508 kDisplayName, | |
| 509 false /* writable */, | |
| 510 false /* supports_notify_tag */)); | |
| 511 ASSERT_EQ(1u, observer.mounts.size()); | 479 ASSERT_EQ(1u, observer.mounts.size()); |
| 512 | 480 |
| 513 const base::DictionaryValue* extensions = | 481 const base::DictionaryValue* extensions = |
| 514 pref_service->GetDictionary(prefs::kFileSystemProviderMounted); | 482 pref_service->GetDictionary(prefs::kFileSystemProviderMounted); |
| 515 ASSERT_TRUE(extensions); | 483 ASSERT_TRUE(extensions); |
| 516 | 484 |
| 517 const base::DictionaryValue* file_systems = NULL; | 485 const base::DictionaryValue* file_systems = NULL; |
| 518 ASSERT_TRUE(extensions->GetDictionaryWithoutPathExpansion(kExtensionId, | 486 ASSERT_TRUE(extensions->GetDictionaryWithoutPathExpansion(kExtensionId, |
| 519 &file_systems)); | 487 &file_systems)); |
| 520 EXPECT_EQ(1u, file_systems->size()); | 488 EXPECT_EQ(1u, file_systems->size()); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 531 const base::DictionaryValue* file_systems = NULL; | 499 const base::DictionaryValue* file_systems = NULL; |
| 532 EXPECT_FALSE(extensions->GetDictionaryWithoutPathExpansion(kExtensionId, | 500 EXPECT_FALSE(extensions->GetDictionaryWithoutPathExpansion(kExtensionId, |
| 533 &file_systems)); | 501 &file_systems)); |
| 534 } | 502 } |
| 535 | 503 |
| 536 service_->RemoveObserver(&observer); | 504 service_->RemoveObserver(&observer); |
| 537 } | 505 } |
| 538 | 506 |
| 539 } // namespace file_system_provider | 507 } // namespace file_system_provider |
| 540 } // namespace chromeos | 508 } // namespace chromeos |
| OLD | NEW |