| 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/extensions/file_manager/device_event_router.h" | 5 #include "chrome/browser/chromeos/extensions/file_manager/device_event_router.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 device_event_router->OnVolumeUnmounted(chromeos::MOUNT_ERROR_NONE, | 117 device_event_router->OnVolumeUnmounted(chromeos::MOUNT_ERROR_NONE, |
| 118 volumeInfo); | 118 volumeInfo); |
| 119 device_event_router->OnDiskRemoved(disk1_unmounted); | 119 device_event_router->OnDiskRemoved(disk1_unmounted); |
| 120 device_event_router->OnDeviceRemoved("/device/test"); | 120 device_event_router->OnDeviceRemoved("/device/test"); |
| 121 ASSERT_EQ(1u, device_event_router->events.size()); | 121 ASSERT_EQ(1u, device_event_router->events.size()); |
| 122 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_REMOVED, | 122 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_REMOVED, |
| 123 device_event_router->events[0].type); | 123 device_event_router->events[0].type); |
| 124 EXPECT_EQ("/device/test", device_event_router->events[0].device_path); | 124 EXPECT_EQ("/device/test", device_event_router->events[0].device_path); |
| 125 } | 125 } |
| 126 | 126 |
| 127 TEST_F(DeviceEventRouterTest, DeviceScan) { | |
| 128 const Disk disk = CreateTestDisk("/device/test", "/mount/path1"); | |
| 129 const Disk disk_unmounted = CreateTestDisk("/device/test", ""); | |
| 130 const VolumeInfo volumeInfo = | |
| 131 CreateTestVolumeInfo("/device/test", "/mount/path1"); | |
| 132 device_event_router->OnDeviceAdded("/device/test"); | |
| 133 base::RunLoop().RunUntilIdle(); | |
| 134 device_event_router->OnDiskAdded(disk, true); | |
| 135 device_event_router->OnVolumeMounted(chromeos::MOUNT_ERROR_NONE, volumeInfo); | |
| 136 device_event_router->OnVolumeUnmounted(chromeos::MOUNT_ERROR_NONE, | |
| 137 volumeInfo); | |
| 138 device_event_router->OnDiskRemoved(disk_unmounted); | |
| 139 device_event_router->OnDeviceRemoved("/device/test"); | |
| 140 ASSERT_EQ(2u, device_event_router->events.size()); | |
| 141 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_SCAN_STARTED, | |
| 142 device_event_router->events[0].type); | |
| 143 EXPECT_EQ("/device/test", device_event_router->events[0].device_path); | |
| 144 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_REMOVED, | |
| 145 device_event_router->events[1].type); | |
| 146 EXPECT_EQ("/device/test", device_event_router->events[1].device_path); | |
| 147 } | |
| 148 | |
| 149 TEST_F(DeviceEventRouterTest, DeviceScanCancelled) { | |
| 150 const Disk disk = CreateTestDisk("/device/test", "/mount/path1"); | |
| 151 const Disk disk_unmounted = CreateTestDisk("/device/test", ""); | |
| 152 const VolumeInfo volumeInfo = | |
| 153 CreateTestVolumeInfo("/device/test", "/mount/path1"); | |
| 154 device_event_router->OnDeviceAdded("/device/test"); | |
| 155 base::RunLoop().RunUntilIdle(); | |
| 156 device_event_router->OnDiskAdded(disk, false); | |
| 157 device_event_router->OnDiskRemoved(disk_unmounted); | |
| 158 device_event_router->OnDeviceRemoved("/device/test"); | |
| 159 ASSERT_EQ(3u, device_event_router->events.size()); | |
| 160 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_SCAN_STARTED, | |
| 161 device_event_router->events[0].type); | |
| 162 EXPECT_EQ("/device/test", device_event_router->events[0].device_path); | |
| 163 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_SCAN_CANCELLED, | |
| 164 device_event_router->events[1].type); | |
| 165 EXPECT_EQ("/device/test", device_event_router->events[1].device_path); | |
| 166 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_REMOVED, | |
| 167 device_event_router->events[2].type); | |
| 168 EXPECT_EQ("/device/test", device_event_router->events[2].device_path); | |
| 169 } | |
| 170 | |
| 171 TEST_F(DeviceEventRouterTest, HardUnplugged) { | 127 TEST_F(DeviceEventRouterTest, HardUnplugged) { |
| 172 const Disk disk1 = CreateTestDisk("/device/test", "/mount/path1"); | 128 const Disk disk1 = CreateTestDisk("/device/test", "/mount/path1"); |
| 173 const Disk disk2 = CreateTestDisk("/device/test", "/mount/path2"); | 129 const Disk disk2 = CreateTestDisk("/device/test", "/mount/path2"); |
| 174 device_event_router->OnDeviceAdded("/device/test"); | 130 device_event_router->OnDeviceAdded("/device/test"); |
| 175 device_event_router->OnDiskAdded(disk1, true); | 131 device_event_router->OnDiskAdded(disk1, true); |
| 176 device_event_router->OnDiskAdded(disk2, true); | 132 device_event_router->OnDiskAdded(disk2, true); |
| 177 device_event_router->OnDiskRemoved(disk1); | 133 device_event_router->OnDiskRemoved(disk1); |
| 178 device_event_router->OnDiskRemoved(disk2); | 134 device_event_router->OnDiskRemoved(disk2); |
| 179 device_event_router->OnDeviceRemoved(kTestDevicePath); | 135 device_event_router->OnDeviceRemoved(kTestDevicePath); |
| 180 base::RunLoop().RunUntilIdle(); | 136 base::RunLoop().RunUntilIdle(); |
| 181 ASSERT_EQ(2u, device_event_router->events.size()); | 137 ASSERT_EQ(2u, device_event_router->events.size()); |
| 182 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_HARD_UNPLUGGED, | 138 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_HARD_UNPLUGGED, |
| 183 device_event_router->events[0].type); | 139 device_event_router->events[0].type); |
| 184 EXPECT_EQ("/device/test", device_event_router->events[0].device_path); | 140 EXPECT_EQ("/device/test", device_event_router->events[0].device_path); |
| 185 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_REMOVED, | 141 EXPECT_EQ(file_manager_private::DEVICE_EVENT_TYPE_REMOVED, |
| 186 device_event_router->events[1].type); | 142 device_event_router->events[1].type); |
| 187 EXPECT_EQ("/device/test", device_event_router->events[1].device_path); | 143 EXPECT_EQ("/device/test", device_event_router->events[1].device_path); |
| 188 } | 144 } |
| 189 | 145 |
| 190 } // namespace file_manager | 146 } // namespace file_manager |
| OLD | NEW |