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

Side by Side Diff: chrome/browser/policy/policy_browsertest.cc

Issue 2194193002: Fix ArcBridgeBootstrap race issues. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 4 years, 2 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
OLDNEW
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
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 3884 matching lines...) Expand 10 before | Expand all | Expand 10 after
4113 } 4112 }
4114 4113
4115 void SetUpInProcessBrowserTestFixture() override { 4114 void SetUpInProcessBrowserTestFixture() override {
4116 PolicyTest::SetUpInProcessBrowserTestFixture(); 4115 PolicyTest::SetUpInProcessBrowserTestFixture();
4117 fake_session_manager_client_ = new chromeos::FakeSessionManagerClient; 4116 fake_session_manager_client_ = new chromeos::FakeSessionManagerClient;
4118 fake_session_manager_client_->set_arc_available(true); 4117 fake_session_manager_client_->set_arc_available(true);
4119 chromeos::DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( 4118 chromeos::DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient(
4120 std::unique_ptr<chromeos::SessionManagerClient>( 4119 std::unique_ptr<chromeos::SessionManagerClient>(
4121 fake_session_manager_client_)); 4120 fake_session_manager_client_));
4122 4121
4123 fake_arc_bridge_instance_.reset(new arc::FakeArcBridgeInstance); 4122 auto service = base::MakeUnique<arc::ArcBridgeServiceImpl>();
4124 arc::ArcServiceManager::SetArcBridgeServiceForTesting( 4123 service->SetArcBridgeBootstrapFactoryForTesting(
4125 base::MakeUnique<arc::ArcBridgeServiceImpl>(base::WrapUnique( 4124 base::Bind(arc::FakeArcBridgeBootstrap::Create));
4126 new arc::FakeArcBridgeBootstrap(fake_arc_bridge_instance_.get())))); 4125 arc::ArcServiceManager::SetArcBridgeServiceForTesting(std::move(service));
4127 } 4126 }
4128 4127
4129 void SetUpCommandLine(base::CommandLine* command_line) override { 4128 void SetUpCommandLine(base::CommandLine* command_line) override {
4130 // ArcAuthService functionality is available only when Arc is enabled. Use 4129 // ArcAuthService functionality is available only when Arc is enabled. Use
4131 // kEnableArc switch that activates it. 4130 // kEnableArc switch that activates it.
4132 command_line->AppendSwitch(chromeos::switches::kEnableArc); 4131 command_line->AppendSwitch(chromeos::switches::kEnableArc);
4133 } 4132 }
4134 4133
4135 private: 4134 private:
4136 chromeos::FakeSessionManagerClient *fake_session_manager_client_; 4135 chromeos::FakeSessionManagerClient *fake_session_manager_client_;
4137 std::unique_ptr<arc::FakeArcBridgeInstance> fake_arc_bridge_instance_;
4138 4136
4139 DISALLOW_COPY_AND_ASSIGN(ArcPolicyTest); 4137 DISALLOW_COPY_AND_ASSIGN(ArcPolicyTest);
4140 }; 4138 };
4141 4139
4142 // Test ArcEnabled policy. 4140 // Test ArcEnabled policy.
4143 IN_PROC_BROWSER_TEST_F(ArcPolicyTest, ArcEnabled) { 4141 IN_PROC_BROWSER_TEST_F(ArcPolicyTest, ArcEnabled) {
4144 SetUpTest(); 4142 SetUpTest();
4145 4143
4146 const PrefService* const pref = browser()->profile()->GetPrefs(); 4144 const PrefService* const pref = browser()->profile()->GetPrefs();
4147 const arc::ArcBridgeService* const arc_bridge_service 4145 const arc::ArcBridgeService* const arc_bridge_service
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
4374 4372
4375 SetEmptyPolicy(); 4373 SetEmptyPolicy();
4376 // Policy not set. 4374 // Policy not set.
4377 CheckSystemTimezoneAutomaticDetectionPolicyUnset(); 4375 CheckSystemTimezoneAutomaticDetectionPolicyUnset();
4378 EXPECT_TRUE(CheckResolveTimezoneByGeolocation(true, false)); 4376 EXPECT_TRUE(CheckResolveTimezoneByGeolocation(true, false));
4379 EXPECT_TRUE(manager->TimeZoneResolverShouldBeRunningForTests()); 4377 EXPECT_TRUE(manager->TimeZoneResolverShouldBeRunningForTests());
4380 } 4378 }
4381 #endif // defined(OS_CHROMEOS) 4379 #endif // defined(OS_CHROMEOS)
4382 4380
4383 } // namespace policy 4381 } // namespace policy
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/arc/arc_auth_service_browsertest.cc ('k') | components/arc/arc_bridge_bootstrap.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698