| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 <stddef.h> | 5 #include <stddef.h> |
| 6 #include <stdint.h> | 6 #include <stdint.h> |
| 7 | 7 |
| 8 #include <algorithm> | 8 #include <algorithm> |
| 9 #include <memory> | 9 #include <memory> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 208 #include "chromeos/audio/cras_audio_handler.h" | 208 #include "chromeos/audio/cras_audio_handler.h" |
| 209 #include "chromeos/chromeos_switches.h" | 209 #include "chromeos/chromeos_switches.h" |
| 210 #include "chromeos/cryptohome/cryptohome_parameters.h" | 210 #include "chromeos/cryptohome/cryptohome_parameters.h" |
| 211 #include "chromeos/dbus/dbus_thread_manager.h" | 211 #include "chromeos/dbus/dbus_thread_manager.h" |
| 212 #include "chromeos/dbus/fake_session_manager_client.h" | 212 #include "chromeos/dbus/fake_session_manager_client.h" |
| 213 #include "chromeos/dbus/session_manager_client.h" | 213 #include "chromeos/dbus/session_manager_client.h" |
| 214 #include "components/arc/arc_bridge_service.h" | 214 #include "components/arc/arc_bridge_service.h" |
| 215 #include "components/arc/arc_bridge_service_impl.h" | 215 #include "components/arc/arc_bridge_service_impl.h" |
| 216 #include "components/arc/arc_service_manager.h" | 216 #include "components/arc/arc_service_manager.h" |
| 217 #include "components/arc/test/fake_arc_bridge_bootstrap.h" | 217 #include "components/arc/test/fake_arc_bridge_bootstrap.h" |
| 218 #include "components/arc/test/fake_arc_bridge_instance.h" | |
| 219 #include "components/signin/core/account_id/account_id.h" | 218 #include "components/signin/core/account_id/account_id.h" |
| 220 #include "components/user_manager/user_manager.h" | 219 #include "components/user_manager/user_manager.h" |
| 221 #include "ui/keyboard/keyboard_util.h" | 220 #include "ui/keyboard/keyboard_util.h" |
| 222 #include "ui/snapshot/screenshot_grabber.h" | 221 #include "ui/snapshot/screenshot_grabber.h" |
| 223 #endif | 222 #endif |
| 224 | 223 |
| 225 #if !defined(OS_MACOSX) | 224 #if !defined(OS_MACOSX) |
| 226 #include "base/compiler_specific.h" | 225 #include "base/compiler_specific.h" |
| 227 #include "chrome/browser/ui/extensions/app_launch_params.h" | 226 #include "chrome/browser/ui/extensions/app_launch_params.h" |
| 228 #include "chrome/browser/ui/extensions/application_launch.h" | 227 #include "chrome/browser/ui/extensions/application_launch.h" |
| (...skipping 3871 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4100 base::WrapUnique(new base::FundamentalValue(true)), nullptr); | 4099 base::WrapUnique(new base::FundamentalValue(true)), nullptr); |
| 4101 UpdateProviderPolicy(policies); | 4100 UpdateProviderPolicy(policies); |
| 4102 EXPECT_TRUE(display_manager->unified_desktop_enabled()); | 4101 EXPECT_TRUE(display_manager->unified_desktop_enabled()); |
| 4103 policies.Set(key::kUnifiedDesktopEnabledByDefault, POLICY_LEVEL_MANDATORY, | 4102 policies.Set(key::kUnifiedDesktopEnabledByDefault, POLICY_LEVEL_MANDATORY, |
| 4104 POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, | 4103 POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, |
| 4105 base::WrapUnique(new base::FundamentalValue(false)), nullptr); | 4104 base::WrapUnique(new base::FundamentalValue(false)), nullptr); |
| 4106 UpdateProviderPolicy(policies); | 4105 UpdateProviderPolicy(policies); |
| 4107 EXPECT_FALSE(display_manager->unified_desktop_enabled()); | 4106 EXPECT_FALSE(display_manager->unified_desktop_enabled()); |
| 4108 } | 4107 } |
| 4109 | 4108 |
| 4110 class ArcPolicyTest : public PolicyTest { | 4109 class ArcPolicyTest : public PolicyTest, |
| 4110 public arc::ArcBridgeServiceImpl::Delegate { |
| 4111 public: | 4111 public: |
| 4112 ArcPolicyTest() {} | 4112 ArcPolicyTest() {} |
| 4113 ~ArcPolicyTest() override {} | 4113 ~ArcPolicyTest() override {} |
| 4114 | 4114 |
| 4115 protected: | 4115 protected: |
| 4116 void SetUpTest() { | 4116 void SetUpTest() { |
| 4117 arc::ArcAuthService::DisableUIForTesting(); | 4117 arc::ArcAuthService::DisableUIForTesting(); |
| 4118 | 4118 |
| 4119 browser()->profile()->GetPrefs()->SetBoolean(prefs::kArcSignedIn, true); | 4119 browser()->profile()->GetPrefs()->SetBoolean(prefs::kArcSignedIn, true); |
| 4120 } | 4120 } |
| 4121 | 4121 |
| 4122 void TearDownTest() { | 4122 void TearDownTest() { |
| 4123 arc::ArcAuthService::Get()->Shutdown(); | 4123 arc::ArcAuthService::Get()->Shutdown(); |
| 4124 } | 4124 } |
| 4125 | 4125 |
| 4126 void SetUpInProcessBrowserTestFixture() override { | 4126 void SetUpInProcessBrowserTestFixture() override { |
| 4127 PolicyTest::SetUpInProcessBrowserTestFixture(); | 4127 PolicyTest::SetUpInProcessBrowserTestFixture(); |
| 4128 fake_session_manager_client_ = new chromeos::FakeSessionManagerClient; | 4128 fake_session_manager_client_ = new chromeos::FakeSessionManagerClient; |
| 4129 fake_session_manager_client_->set_arc_available(true); | 4129 fake_session_manager_client_->set_arc_available(true); |
| 4130 chromeos::DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( | 4130 chromeos::DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( |
| 4131 std::unique_ptr<chromeos::SessionManagerClient>( | 4131 std::unique_ptr<chromeos::SessionManagerClient>( |
| 4132 fake_session_manager_client_)); | 4132 fake_session_manager_client_)); |
| 4133 | 4133 |
| 4134 fake_arc_bridge_instance_.reset(new arc::FakeArcBridgeInstance); | 4134 std::unique_ptr<arc::ArcBridgeServiceImpl> service( |
| 4135 arc::ArcServiceManager::SetArcBridgeServiceForTesting( | 4135 new arc::ArcBridgeServiceImpl); |
| 4136 base::WrapUnique(new arc::ArcBridgeServiceImpl( | 4136 service->SetDelegateForTesting(this); |
| 4137 base::WrapUnique(new arc::FakeArcBridgeBootstrap( | 4137 arc::ArcServiceManager::SetArcBridgeServiceForTesting(std::move(service)); |
| 4138 fake_arc_bridge_instance_.get()))))); | |
| 4139 } | 4138 } |
| 4140 | 4139 |
| 4141 void SetUpCommandLine(base::CommandLine* command_line) override { | 4140 void SetUpCommandLine(base::CommandLine* command_line) override { |
| 4142 // ArcAuthService functionality is available only when Arc is enabled. Use | 4141 // ArcAuthService functionality is available only when Arc is enabled. Use |
| 4143 // kEnableArc switch that activates it. | 4142 // kEnableArc switch that activates it. |
| 4144 command_line->AppendSwitch(chromeos::switches::kEnableArc); | 4143 command_line->AppendSwitch(chromeos::switches::kEnableArc); |
| 4145 } | 4144 } |
| 4146 | 4145 |
| 4147 private: | 4146 private: |
| 4147 // ArcBridgeServiceImpl::Delegate override: |
| 4148 std::unique_ptr<arc::ArcBridgeBootstrap> CreateBootstrap() override { |
| 4149 return base::WrapUnique(new arc::FakeArcBridgeBootstrap); |
| 4150 } |
| 4151 |
| 4148 chromeos::FakeSessionManagerClient *fake_session_manager_client_; | 4152 chromeos::FakeSessionManagerClient *fake_session_manager_client_; |
| 4149 std::unique_ptr<arc::FakeArcBridgeInstance> fake_arc_bridge_instance_; | |
| 4150 | 4153 |
| 4151 DISALLOW_COPY_AND_ASSIGN(ArcPolicyTest); | 4154 DISALLOW_COPY_AND_ASSIGN(ArcPolicyTest); |
| 4152 }; | 4155 }; |
| 4153 | 4156 |
| 4154 // Test ArcEnabled policy. | 4157 // Test ArcEnabled policy. |
| 4155 IN_PROC_BROWSER_TEST_F(ArcPolicyTest, ArcEnabled) { | 4158 IN_PROC_BROWSER_TEST_F(ArcPolicyTest, ArcEnabled) { |
| 4156 SetUpTest(); | 4159 SetUpTest(); |
| 4157 | 4160 |
| 4158 const PrefService* const pref = browser()->profile()->GetPrefs(); | 4161 const PrefService* const pref = browser()->profile()->GetPrefs(); |
| 4159 const arc::ArcBridgeService* const arc_bridge_service | 4162 const arc::ArcBridgeService* const arc_bridge_service |
| (...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4386 | 4389 |
| 4387 SetEmptyPolicy(); | 4390 SetEmptyPolicy(); |
| 4388 // Policy not set. | 4391 // Policy not set. |
| 4389 CheckSystemTimezoneAutomaticDetectionPolicyUnset(); | 4392 CheckSystemTimezoneAutomaticDetectionPolicyUnset(); |
| 4390 EXPECT_TRUE(CheckResolveTimezoneByGeolocation(true, false)); | 4393 EXPECT_TRUE(CheckResolveTimezoneByGeolocation(true, false)); |
| 4391 EXPECT_TRUE(manager->TimeZoneResolverShouldBeRunningForTests()); | 4394 EXPECT_TRUE(manager->TimeZoneResolverShouldBeRunningForTests()); |
| 4392 } | 4395 } |
| 4393 #endif // defined(OS_CHROMEOS) | 4396 #endif // defined(OS_CHROMEOS) |
| 4394 | 4397 |
| 4395 } // namespace policy | 4398 } // namespace policy |
| OLD | NEW |