Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2971)

Unified Diff: chrome/browser/chromeos/file_manager/volume_manager_unittest.cc

Issue 160483004: Keep track of the list of currently mounted volumes in C++-side VolumeManager. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review fix Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/file_manager/volume_manager_unittest.cc
diff --git a/chrome/browser/chromeos/file_manager/volume_manager_unittest.cc b/chrome/browser/chromeos/file_manager/volume_manager_unittest.cc
index e413e1cd6542c77f46e2dda98f0b29a69de2cb30..1ac9ce68baa43311ab655a1179a877c491400c1b 100644
--- a/chrome/browser/chromeos/file_manager/volume_manager_unittest.cc
+++ b/chrome/browser/chromeos/file_manager/volume_manager_unittest.cc
@@ -159,31 +159,24 @@ class VolumeManagerTest : public testing::Test {
scoped_ptr<VolumeManager> volume_manager_;
};
-TEST_F(VolumeManagerTest, OnFileSystemMounted) {
+TEST_F(VolumeManagerTest, OnDriveFileSystemMountAndUnmount) {
LoggingObserver observer;
volume_manager_->AddObserver(&observer);
volume_manager_->OnFileSystemMounted();
ASSERT_EQ(1U, observer.events().size());
- const LoggingObserver::Event& event = observer.events()[0];
+ LoggingObserver::Event event = observer.events()[0];
EXPECT_EQ(LoggingObserver::Event::VOLUME_MOUNTED, event.type);
EXPECT_EQ(drive::util::GetDriveMountPointPath(profile_.get()).AsUTF8Unsafe(),
event.device_path);
EXPECT_EQ(chromeos::MOUNT_ERROR_NONE, event.mount_error);
EXPECT_FALSE(event.is_remounting);
- volume_manager_->RemoveObserver(&observer);
-}
-
-TEST_F(VolumeManagerTest, OnFileSystemBeingUnmounted) {
- LoggingObserver observer;
- volume_manager_->AddObserver(&observer);
-
volume_manager_->OnFileSystemBeingUnmounted();
- ASSERT_EQ(1U, observer.events().size());
- const LoggingObserver::Event& event = observer.events()[0];
+ ASSERT_EQ(2U, observer.events().size());
+ event = observer.events()[1];
EXPECT_EQ(LoggingObserver::Event::VOLUME_UNMOUNTED, event.type);
EXPECT_EQ(drive::util::GetDriveMountPointPath(profile_.get()).AsUTF8Unsafe(),
event.device_path);
@@ -192,6 +185,16 @@ TEST_F(VolumeManagerTest, OnFileSystemBeingUnmounted) {
volume_manager_->RemoveObserver(&observer);
}
+TEST_F(VolumeManagerTest, OnDriveFileSystemUnmountWithoutMount) {
+ LoggingObserver observer;
+ volume_manager_->AddObserver(&observer);
+ volume_manager_->OnFileSystemBeingUnmounted();
+
+ // Unmount event for non-mounted volume is not reported.
+ ASSERT_EQ(0U, observer.events().size());
+ volume_manager_->RemoveObserver(&observer);
+}
+
TEST_F(VolumeManagerTest, OnDiskEvent_Hidden) {
LoggingObserver observer;
volume_manager_->AddObserver(&observer);
@@ -435,7 +438,7 @@ TEST_F(VolumeManagerTest, OnDeviceEvent_Scanned) {
volume_manager_->RemoveObserver(&observer);
}
-TEST_F(VolumeManagerTest, OnMountEvent_Mounting) {
+TEST_F(VolumeManagerTest, OnMountEvent_MountingAndUnmounting) {
LoggingObserver observer;
volume_manager_->AddObserver(&observer);
@@ -450,12 +453,22 @@ TEST_F(VolumeManagerTest, OnMountEvent_Mounting) {
kMountPoint);
ASSERT_EQ(1U, observer.events().size());
- const LoggingObserver::Event& event = observer.events()[0];
+ LoggingObserver::Event event = observer.events()[0];
EXPECT_EQ(LoggingObserver::Event::VOLUME_MOUNTED, event.type);
EXPECT_EQ("device1", event.device_path);
EXPECT_EQ(chromeos::MOUNT_ERROR_NONE, event.mount_error);
EXPECT_FALSE(event.is_remounting);
+ volume_manager_->OnMountEvent(chromeos::disks::DiskMountManager::UNMOUNTING,
+ chromeos::MOUNT_ERROR_NONE,
+ kMountPoint);
+
+ ASSERT_EQ(2U, observer.events().size());
+ event = observer.events()[1];
+ EXPECT_EQ(LoggingObserver::Event::VOLUME_UNMOUNTED, event.type);
+ EXPECT_EQ("device1", event.device_path);
+ EXPECT_EQ(chromeos::MOUNT_ERROR_NONE, event.mount_error);
+
volume_manager_->RemoveObserver(&observer);
}
@@ -510,7 +523,7 @@ TEST_F(VolumeManagerTest, OnMountEvent_Remounting) {
volume_manager_->RemoveObserver(&observer);
}
-TEST_F(VolumeManagerTest, OnMountEvent_Unmounting) {
+TEST_F(VolumeManagerTest, OnMountEvent_UnmountingWithoutMounting) {
LoggingObserver observer;
volume_manager_->AddObserver(&observer);
@@ -524,11 +537,8 @@ TEST_F(VolumeManagerTest, OnMountEvent_Unmounting) {
chromeos::MOUNT_ERROR_NONE,
kMountPoint);
- ASSERT_EQ(1U, observer.events().size());
- const LoggingObserver::Event& event = observer.events()[0];
- EXPECT_EQ(LoggingObserver::Event::VOLUME_UNMOUNTED, event.type);
- EXPECT_EQ("device1", event.device_path);
- EXPECT_EQ(chromeos::MOUNT_ERROR_NONE, event.mount_error);
+ // Unmount event for a disk not mounted in this manager is not reported.
+ ASSERT_EQ(0U, observer.events().size());
volume_manager_->RemoveObserver(&observer);
}

Powered by Google App Engine
This is Rietveld 408576698