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

Unified Diff: chrome/browser/policy/power_policy_browsertest.cc

Issue 12189011: Split up chrome/browser/policy subdirectory (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase, add chrome/browser/chromeos/policy/OWNERS Created 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/policy/policy_builder.cc ('k') | chrome/browser/policy/proxy_policy_provider.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/policy/power_policy_browsertest.cc
diff --git a/chrome/browser/policy/power_policy_browsertest.cc b/chrome/browser/policy/power_policy_browsertest.cc
deleted file mode 100644
index 44af8692153259fa81ee8888f2d4d4042d85a92d..0000000000000000000000000000000000000000
--- a/chrome/browser/policy/power_policy_browsertest.cc
+++ /dev/null
@@ -1,207 +0,0 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include <string>
-
-#include "base/compiler_specific.h"
-#include "base/run_loop.h"
-#include "base/values.h"
-#include "chrome/browser/policy/browser_policy_connector.h"
-#include "chrome/browser/policy/mock_configuration_policy_provider.h"
-#include "chrome/browser/policy/policy_map.h"
-#include "chrome/browser/policy/policy_types.h"
-#include "chrome/test/base/in_process_browser_test.h"
-#include "chromeos/dbus/dbus_thread_manager.h"
-#include "chromeos/dbus/mock_dbus_thread_manager.h"
-#include "chromeos/dbus/mock_power_manager_client.h"
-#include "chromeos/dbus/mock_session_manager_client.h"
-#include "chromeos/dbus/power_manager/policy.pb.h"
-#include "policy/policy_constants.h"
-#include "testing/gmock/include/gmock/gmock.h"
-
-namespace policy {
-
-namespace {
-
-using ::testing::AnyNumber;
-using ::testing::AtLeast;
-using ::testing::Mock;
-using ::testing::Return;
-using ::testing::_;
-
-namespace pm = power_manager;
-
-MATCHER_P(PowerManagementPolicyMatches, expected_power_management_policy,
- std::string(negation ? "matches" : "does not match") +
- "the expected power management policy") {
- // A power management policy without an |ac_delays| message is equivalent to
- // a power management policy with an empty |ac_delays| message but their
- // serializations are different. To simplify the equality check, ensure that
- // the expected and actual power management policies both have an |ac_delays|
- // message. The same applies to the |battery_delays| message.
- pm::PowerManagementPolicy expected(expected_power_management_policy);
- expected.mutable_ac_delays();
- expected.mutable_battery_delays();
- pm::PowerManagementPolicy actual(arg);
- actual.mutable_ac_delays();
- actual.mutable_battery_delays();
- return actual.SerializeAsString() == expected.SerializeAsString();
-}
-
-} // namespace
-
-class PowerPolicyBrowserTest : public InProcessBrowserTest {
- protected:
- // InProcessBrowserTest:
- virtual void SetUpInProcessBrowserTestFixture() OVERRIDE;
-
- void SetUserPolicyAndVerifyPowerManagementPolicy(
- const std::string& user_policy_name,
- base::Value* user_policy_value,
- const pm::PowerManagementPolicy& power_management_policy);
-
- chromeos::MockPowerManagerClient* power_manager_client_;
-
- private:
- MockConfigurationPolicyProvider provider_;
-};
-
-void PowerPolicyBrowserTest::SetUpInProcessBrowserTestFixture() {
- chromeos::MockDBusThreadManager* dbus_thread_manager =
- new chromeos::MockDBusThreadManager;
- chromeos::DBusThreadManager::InitializeForTesting(dbus_thread_manager);
- EXPECT_CALL(*dbus_thread_manager->mock_session_manager_client(),
- RetrieveUserPolicy(_));
- power_manager_client_ = dbus_thread_manager->mock_power_manager_client();
- EXPECT_CALL(provider_, IsInitializationComplete(_))
- .WillRepeatedly(Return(true));
- EXPECT_CALL(provider_, RegisterPolicyDomain(_, _)).Times(AnyNumber());
- BrowserPolicyConnector::SetPolicyProviderForTesting(&provider_);
-}
-
-// Verify that setting |user_policy_name| to |user_policy_value| causes the
-// updated |power_management_policy| to be sent to the power management backend.
-void PowerPolicyBrowserTest::SetUserPolicyAndVerifyPowerManagementPolicy(
- const std::string& user_policy_name,
- base::Value* user_policy_value,
- const pm::PowerManagementPolicy& power_management_policy) {
- // Setting the user policy causes a notification which triggers an update to
- // the backend. If other policies had been set before, they will get unset,
- // causing additional notifications and triggering duplicate updates to the
- // backend. Hence, expect one or more updates.
- EXPECT_CALL(*power_manager_client_,
- SetPolicy(PowerManagementPolicyMatches(power_management_policy)))
- .Times(AtLeast(1));
- PolicyMap policy_map;
- policy_map.Set(user_policy_name, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
- user_policy_value);
- provider_.UpdateChromePolicy(policy_map);
- base::RunLoop().RunUntilIdle();
- Mock::VerifyAndClearExpectations(power_manager_client_);
-}
-
-IN_PROC_BROWSER_TEST_F(PowerPolicyBrowserTest, SetPowerPolicy) {
- pm::PowerManagementPolicy power_management_policy;
-
- power_management_policy.set_idle_action(
- pm::PowerManagementPolicy::STOP_SESSION);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kIdleAction,
- base::Value::CreateIntegerValue(pm::PowerManagementPolicy::STOP_SESSION),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.set_lid_closed_action(
- pm::PowerManagementPolicy::STOP_SESSION);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kLidCloseAction,
- base::Value::CreateIntegerValue(pm::PowerManagementPolicy::STOP_SESSION),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_ac_delays()->set_idle_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kIdleDelayAC,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_ac_delays()->set_screen_off_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kScreenOffDelayAC,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_ac_delays()->set_screen_dim_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kScreenDimDelayAC,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_ac_delays()->set_screen_lock_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kScreenLockDelayAC,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_battery_delays()->set_idle_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kIdleDelayBattery,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_battery_delays()->set_screen_off_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kScreenOffDelayBattery,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_battery_delays()->set_screen_dim_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kScreenDimDelayBattery,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.mutable_battery_delays()->set_screen_lock_ms(900000);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kScreenLockDelayBattery,
- base::Value::CreateIntegerValue(900000),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.set_use_audio_activity(false);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kPowerManagementUsesAudioActivity,
- base::Value::CreateBooleanValue(false),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.set_use_video_activity(false);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kPowerManagementUsesVideoActivity,
- base::Value::CreateBooleanValue(false),
- power_management_policy);
-
- power_management_policy.Clear();
- power_management_policy.set_presentation_idle_delay_factor(3.0);
- SetUserPolicyAndVerifyPowerManagementPolicy(
- key::kPresentationIdleDelayScale,
- base::Value::CreateIntegerValue(300),
- power_management_policy);
-
- // During teardown, an empty power management policy should be sent to the
- // backend.
- power_management_policy.Clear();
- EXPECT_CALL(*power_manager_client_, SetPolicy(
- PowerManagementPolicyMatches(power_management_policy)));
- EXPECT_CALL(*power_manager_client_, RemoveObserver(_)).Times(AnyNumber());
-}
-
-} // namespace policy
« no previous file with comments | « chrome/browser/policy/policy_builder.cc ('k') | chrome/browser/policy/proxy_policy_provider.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698