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

Side by Side Diff: chrome/browser/chromeos/file_manager/volume_manager_unittest.cc

Issue 213123008: [fsp] Unmount file systems when the providing extension gets unloaded. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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_manager/volume_manager.h" 5 #include "chrome/browser/chromeos/file_manager/volume_manager.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/prefs/pref_service.h" 11 #include "base/prefs/pref_service.h"
12 #include "chrome/browser/chromeos/file_manager/fake_disk_mount_manager.h" 12 #include "chrome/browser/chromeos/file_manager/fake_disk_mount_manager.h"
13 #include "chrome/browser/chromeos/file_manager/volume_manager_observer.h" 13 #include "chrome/browser/chromeos/file_manager/volume_manager_observer.h"
14 #include "chrome/browser/chromeos/file_system_provider/service.h" 14 #include "chrome/browser/chromeos/file_system_provider/service.h"
15 #include "chrome/common/pref_names.h" 15 #include "chrome/common/pref_names.h"
16 #include "chrome/test/base/testing_profile.h" 16 #include "chrome/test/base/testing_profile.h"
17 #include "chromeos/dbus/fake_power_manager_client.h" 17 #include "chromeos/dbus/fake_power_manager_client.h"
18 #include "chromeos/disks/disk_mount_manager.h" 18 #include "chromeos/disks/disk_mount_manager.h"
19 #include "content/public/test/test_browser_thread_bundle.h" 19 #include "content/public/test/test_browser_thread_bundle.h"
20 #include "extensions/browser/extension_registry.h"
20 #include "testing/gtest/include/gtest/gtest.h" 21 #include "testing/gtest/include/gtest/gtest.h"
21 22
22 namespace file_manager { 23 namespace file_manager {
23 namespace { 24 namespace {
24 25
25 class LoggingObserver : public VolumeManagerObserver { 26 class LoggingObserver : public VolumeManagerObserver {
26 public: 27 public:
27 struct Event { 28 struct Event {
28 enum EventType { 29 enum EventType {
29 DISK_ADDED, 30 DISK_ADDED,
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 protected: 141 protected:
141 VolumeManagerTest() { 142 VolumeManagerTest() {
142 } 143 }
143 virtual ~VolumeManagerTest() { 144 virtual ~VolumeManagerTest() {
144 } 145 }
145 146
146 virtual void SetUp() OVERRIDE { 147 virtual void SetUp() OVERRIDE {
147 power_manager_client_.reset(new chromeos::FakePowerManagerClient); 148 power_manager_client_.reset(new chromeos::FakePowerManagerClient);
148 disk_mount_manager_.reset(new FakeDiskMountManager); 149 disk_mount_manager_.reset(new FakeDiskMountManager);
149 profile_.reset(new TestingProfile); 150 profile_.reset(new TestingProfile);
151 extension_registry_.reset(new extensions::ExtensionRegistry);
150 file_system_provider_service_.reset( 152 file_system_provider_service_.reset(
151 new chromeos::file_system_provider::Service(profile_.get())); 153 new chromeos::file_system_provider::Service(profile_.get(),
154 extension_registry_.get()));
152 volume_manager_.reset( 155 volume_manager_.reset(
153 new VolumeManager(profile_.get(), 156 new VolumeManager(profile_.get(),
154 NULL, // DriveIntegrationService 157 NULL, // DriveIntegrationService
155 power_manager_client_.get(), 158 power_manager_client_.get(),
156 disk_mount_manager_.get(), 159 disk_mount_manager_.get(),
157 file_system_provider_service_.get())); 160 file_system_provider_service_.get()));
158 } 161 }
159 162
160 content::TestBrowserThreadBundle thread_bundle_; 163 content::TestBrowserThreadBundle thread_bundle_;
161 scoped_ptr<chromeos::FakePowerManagerClient> power_manager_client_; 164 scoped_ptr<chromeos::FakePowerManagerClient> power_manager_client_;
162 scoped_ptr<FakeDiskMountManager> disk_mount_manager_; 165 scoped_ptr<FakeDiskMountManager> disk_mount_manager_;
163 scoped_ptr<TestingProfile> profile_; 166 scoped_ptr<TestingProfile> profile_;
167 scoped_ptr<extensions::ExtensionRegistry> extension_registry_;
164 scoped_ptr<chromeos::file_system_provider::Service> 168 scoped_ptr<chromeos::file_system_provider::Service>
165 file_system_provider_service_; 169 file_system_provider_service_;
166 scoped_ptr<VolumeManager> volume_manager_; 170 scoped_ptr<VolumeManager> volume_manager_;
167 }; 171 };
168 172
169 TEST_F(VolumeManagerTest, OnDriveFileSystemMountAndUnmount) { 173 TEST_F(VolumeManagerTest, OnDriveFileSystemMountAndUnmount) {
170 LoggingObserver observer; 174 LoggingObserver observer;
171 volume_manager_->AddObserver(&observer); 175 volume_manager_->AddObserver(&observer);
172 176
173 volume_manager_->OnFileSystemMounted(); 177 volume_manager_->OnFileSystemMounted();
(...skipping 563 matching lines...) Expand 10 before | Expand all | Expand 10 after
737 chromeos::disks::DiskMountManager::MountPointInfo( 741 chromeos::disks::DiskMountManager::MountPointInfo(
738 "/other/profile/drive/folder/3.zip", 742 "/other/profile/drive/folder/3.zip",
739 "/archive/3", 743 "/archive/3",
740 chromeos::MOUNT_TYPE_ARCHIVE, 744 chromeos::MOUNT_TYPE_ARCHIVE,
741 chromeos::disks::MOUNT_CONDITION_NONE)); 745 chromeos::disks::MOUNT_CONDITION_NONE));
742 EXPECT_FALSE(volume_manager_->FindVolumeInfoById("archive:3", &volume_info)); 746 EXPECT_FALSE(volume_manager_->FindVolumeInfoById("archive:3", &volume_info));
743 EXPECT_EQ(3u, observer.events().size()); 747 EXPECT_EQ(3u, observer.events().size());
744 } 748 }
745 749
746 } // namespace file_manager 750 } // namespace file_manager
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698