1 // Copyright (c) 2012 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.
5 #include "chrome/browser/chromeos/drive/drive_integration_service.h"
7 #include "base/prefs/pref_service.h"
8 #include "chrome/browser/profiles/profile.h"
9 #include "chrome/browser/ui/browser.h"
10 #include "chrome/common/pref_names.h"
11 #include "chrome/test/base/in_process_browser_test.h"
15 class DriveIntegrationServiceBrowserTest
: public InProcessBrowserTest
{
18 // Verify DriveIntegrationService is created during login.
19 IN_PROC_BROWSER_TEST_F(DriveIntegrationServiceBrowserTest
,
21 EXPECT_TRUE(DriveIntegrationServiceFactory::FindForProfile(
22 browser()->profile()));
26 IN_PROC_BROWSER_TEST_F(DriveIntegrationServiceBrowserTest
,
27 DisableDrivePolicyTest
) {
28 // First make sure the pref is set to its default value which should permit
30 browser()->profile()->GetPrefs()->SetBoolean(prefs::kDisableDrive
, false);
32 drive::DriveIntegrationService
* integration_service
=
33 drive::DriveIntegrationServiceFactory::FindForProfile(
34 browser()->profile());
36 EXPECT_TRUE(integration_service
);
37 EXPECT_TRUE(integration_service
->is_enabled());
39 // ...next try to disable drive.
40 browser()->profile()->GetPrefs()->SetBoolean(prefs::kDisableDrive
, true);
42 EXPECT_EQ(integration_service
,
43 drive::DriveIntegrationServiceFactory::FindForProfile(
44 browser()->profile()));
45 EXPECT_FALSE(integration_service
->is_enabled());