| Index: chrome/browser/chromeos/extensions/file_manager/device_event_router_unittest.cc
|
| diff --git a/chrome/browser/chromeos/extensions/file_manager/device_event_router_unittest.cc b/chrome/browser/chromeos/extensions/file_manager/device_event_router_unittest.cc
|
| index 4ee098d05be522769ef64dcb367b53c14725a776..1619dfce3e04b31abfa0dbaf38d6d86b73164118 100644
|
| --- a/chrome/browser/chromeos/extensions/file_manager/device_event_router_unittest.cc
|
| +++ b/chrome/browser/chromeos/extensions/file_manager/device_event_router_unittest.cc
|
| @@ -68,7 +68,8 @@ class DeviceEventRouterTest : public testing::Test {
|
|
|
| // Creates a disk instance with |device_path| and |mount_path| for testing.
|
| Disk CreateTestDisk(const std::string& device_path,
|
| - const std::string& mount_path) {
|
| + const std::string& mount_path,
|
| + bool is_read_only_hardware) {
|
| return Disk(device_path,
|
| mount_path,
|
| "",
|
| @@ -84,7 +85,7 @@ class DeviceEventRouterTest : public testing::Test {
|
| chromeos::DEVICE_TYPE_UNKNOWN,
|
| 0,
|
| false,
|
| - false,
|
| + is_read_only_hardware,
|
| false,
|
| false,
|
| false,
|
| @@ -98,8 +99,8 @@ class DeviceEventRouterTest : public testing::Test {
|
| };
|
|
|
| TEST_F(DeviceEventRouterTest, AddAndRemoveDevice) {
|
| - const Disk disk1 = CreateTestDisk("/device/test", "/mount/path1");
|
| - const Disk disk1_unmounted = CreateTestDisk("/device/test", "");
|
| + const Disk disk1 = CreateTestDisk("/device/test", "/mount/path1", false);
|
| + const Disk disk1_unmounted = CreateTestDisk("/device/test", "", false);
|
| std::unique_ptr<Volume> volume(Volume::CreateForTesting(
|
| base::FilePath(FILE_PATH_LITERAL("/device/test")),
|
| base::FilePath(FILE_PATH_LITERAL("/mount/path1"))));
|
| @@ -118,8 +119,8 @@ TEST_F(DeviceEventRouterTest, AddAndRemoveDevice) {
|
| }
|
|
|
| TEST_F(DeviceEventRouterTest, HardUnplugged) {
|
| - const Disk disk1 = CreateTestDisk("/device/test", "/mount/path1");
|
| - const Disk disk2 = CreateTestDisk("/device/test", "/mount/path2");
|
| + const Disk disk1 = CreateTestDisk("/device/test", "/mount/path1", false);
|
| + const Disk disk2 = CreateTestDisk("/device/test", "/mount/path2", false);
|
| device_event_router->OnDeviceAdded("/device/test");
|
| device_event_router->OnDiskAdded(disk1, true);
|
| device_event_router->OnDiskAdded(disk2, true);
|
| @@ -136,4 +137,21 @@ TEST_F(DeviceEventRouterTest, HardUnplugged) {
|
| EXPECT_EQ("/device/test", device_event_router->events[1].device_path);
|
| }
|
|
|
| +TEST_F(DeviceEventRouterTest, HardUnplugReadOnlyVolume) {
|
| + const Disk disk1 = CreateTestDisk("/device/test", "/mount/path1", true);
|
| + const Disk disk2 = CreateTestDisk("/device/test", "/mount/path2", true);
|
| + device_event_router->OnDeviceAdded("/device/test");
|
| + device_event_router->OnDiskAdded(disk1, true);
|
| + device_event_router->OnDiskAdded(disk2, true);
|
| + device_event_router->OnDiskRemoved(disk1);
|
| + device_event_router->OnDiskRemoved(disk2);
|
| + device_event_router->OnDeviceRemoved(kTestDevicePath);
|
| + base::RunLoop().RunUntilIdle();
|
| + ASSERT_EQ(1u, device_event_router->events.size());
|
| + EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_REMOVED,
|
| + device_event_router->events[0].type);
|
| + EXPECT_EQ("/device/test", device_event_router->events[0].device_path);
|
| + // Should not warn hard unplug because the volumes are read-only.
|
| +}
|
| +
|
| } // namespace file_manager
|
|
|