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

Side by Side Diff: chrome/browser/chromeos/extensions/file_manager/event_router_browsertest.cc

Issue 23890002: Extract OnDiskEvent and OnFormatEvent logic part from EventRouter to VolumeManager. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 3 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
(Empty)
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/chromeos/extensions/file_manager/event_router.h"
6
7 #include "base/prefs/pref_service.h"
8 #include "chrome/browser/chromeos/extensions/file_manager/file_browser_private_a pi.h"
9 #include "chrome/browser/chromeos/extensions/file_manager/file_browser_private_a pi_factory.h"
10 #include "chrome/browser/profiles/profile.h"
11 #include "chrome/browser/ui/browser.h"
12 #include "chrome/common/pref_names.h"
13 #include "chrome/test/base/in_process_browser_test.h"
14 #include "chromeos/disks/disk_mount_manager.h"
15 #include "chromeos/disks/mock_disk_mount_manager.h"
16
17 using testing::_;
18 using chromeos::disks::DiskMountManager;
19 using chromeos::disks::MockDiskMountManager;
20
21 namespace file_manager {
22
23 class FileManagerEventRouterBrowserTest : public InProcessBrowserTest {
24 public:
25 // ExtensionApiTest override
26 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE {
27 InProcessBrowserTest::SetUpInProcessBrowserTestFixture();
28
29 disk_mount_manager_mock_ = new MockDiskMountManager;
30 chromeos::disks::DiskMountManager::InitializeForTesting(
31 disk_mount_manager_mock_);
32 disk_mount_manager_mock_->SetupDefaultReplies();
33 }
34
35 MockDiskMountManager* disk_mount_manager_mock_;
36 };
37
38 IN_PROC_BROWSER_TEST_F(FileManagerEventRouterBrowserTest,
39 ExternalStoragePolicyTest) {
40 FileBrowserPrivateAPI* file_browser =
41 FileBrowserPrivateAPIFactory::GetForProfile(browser()->profile());
42 EventRouter* event_router =
43 file_browser->event_router();
44
45 DiskMountManager::DiskEvent event = DiskMountManager::DISK_ADDED;
46 // Prepare a fake disk. All that matters here is that the mount point is empty
47 // but the device path is not so that it will exercise the path we care about.
48 DiskMountManager::Disk disk(
49 "fake_path", "", "X", "X", "X", "X", "X", "X", "X", "X", "X", "X",
50 chromeos::DEVICE_TYPE_USB, 1, false, false, true, false, false);
51
52 // First we set the policy to prevent storage mounting and check that the
53 // callback is not called.
54 browser()->profile()->GetPrefs()->SetBoolean(prefs::kExternalStorageDisabled,
55 true);
56
57 EXPECT_CALL(*disk_mount_manager_mock_, MountPath(_, _, _, _)).Times(0);
58
59 event_router->OnDiskEvent(event, &disk);
60
61 // Next we repeat but with the policy not active this time.
62 browser()->profile()->GetPrefs()->SetBoolean(prefs::kExternalStorageDisabled,
63 false);
64
65 EXPECT_CALL(*disk_mount_manager_mock_,
66 MountPath("fake_path", "", "", chromeos::MOUNT_TYPE_DEVICE))
67 .Times(1);
68
69 event_router->OnDiskEvent(event, &disk);
70 }
71
72 } // namespace file_manager
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698