| Index: chrome/browser/policy/policy_statistics_collector_unittest.cc
|
| diff --git a/chrome/browser/policy/policy_statistics_collector_unittest.cc b/chrome/browser/policy/policy_statistics_collector_unittest.cc
|
| deleted file mode 100644
|
| index dbffb0644c5f61d14c6d0e08452c352d72ae787b..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/policy/policy_statistics_collector_unittest.cc
|
| +++ /dev/null
|
| @@ -1,191 +0,0 @@
|
| -// Copyright (c) 2012 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 <cstring>
|
| -#include <string>
|
| -
|
| -#include "base/callback.h"
|
| -#include "base/compiler_specific.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "base/prefs/pref_registry_simple.h"
|
| -#include "base/prefs/testing_pref_service.h"
|
| -#include "base/test/test_simple_task_runner.h"
|
| -#include "base/values.h"
|
| -#include "chrome/browser/policy/mock_policy_service.h"
|
| -#include "chrome/browser/policy/policy_statistics_collector.h"
|
| -#include "chrome/browser/policy/test/policy_test_utils.h"
|
| -#include "components/policy/core/common/external_data_fetcher.h"
|
| -#include "components/policy/core/common/policy_map.h"
|
| -#include "components/policy/core/common/policy_pref_names.h"
|
| -#include "components/policy/core/common/policy_types.h"
|
| -#include "testing/gmock/include/gmock/gmock.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -namespace policy {
|
| -
|
| -namespace {
|
| -
|
| -using testing::ReturnRef;
|
| -
|
| -// Arbitrary policy names used for testing.
|
| -const char kTestPolicy1[] = "Test Policy 1";
|
| -const char kTestPolicy2[] = "Test Policy 2";
|
| -
|
| -const int kTestPolicy1Id = 42;
|
| -const int kTestPolicy2Id = 123;
|
| -
|
| -const char kTestChromeSchema[] =
|
| - "{"
|
| - " \"type\": \"object\","
|
| - " \"properties\": {"
|
| - " \"Test Policy 1\": { \"type\": \"string\" },"
|
| - " \"Test Policy 2\": { \"type\": \"string\" }"
|
| - " }"
|
| - "}";
|
| -
|
| -const PolicyDetails kTestPolicyDetails[] = {
|
| - // is_deprecated is_device_policy id max_external_data_size
|
| - { false, false, kTestPolicy1Id, 0 },
|
| - { false, false, kTestPolicy2Id, 0 },
|
| -};
|
| -
|
| -class TestPolicyStatisticsCollector : public PolicyStatisticsCollector {
|
| - public:
|
| - TestPolicyStatisticsCollector(
|
| - const GetChromePolicyDetailsCallback& get_details,
|
| - const Schema& chrome_schema,
|
| - PolicyService* policy_service,
|
| - PrefService* prefs,
|
| - const scoped_refptr<base::TaskRunner>& task_runner)
|
| - : PolicyStatisticsCollector(get_details,
|
| - chrome_schema,
|
| - policy_service,
|
| - prefs,
|
| - task_runner) {}
|
| -
|
| - MOCK_METHOD1(RecordPolicyUse, void(int));
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| -class PolicyStatisticsCollectorTest : public testing::Test {
|
| - protected:
|
| - PolicyStatisticsCollectorTest()
|
| - : update_delay_(base::TimeDelta::FromMilliseconds(
|
| - PolicyStatisticsCollector::kStatisticsUpdateRate)),
|
| - task_runner_(new base::TestSimpleTaskRunner()) {
|
| - }
|
| -
|
| - virtual void SetUp() OVERRIDE {
|
| - std::string error;
|
| - chrome_schema_ = Schema::Parse(kTestChromeSchema, &error);
|
| - ASSERT_TRUE(chrome_schema_.valid()) << error;
|
| -
|
| - policy_details_.SetDetails(kTestPolicy1, &kTestPolicyDetails[0]);
|
| - policy_details_.SetDetails(kTestPolicy2, &kTestPolicyDetails[1]);
|
| -
|
| - prefs_.registry()->RegisterInt64Pref(
|
| - policy_prefs::kLastPolicyStatisticsUpdate, 0);
|
| -
|
| - // Set up default function behaviour.
|
| - EXPECT_CALL(policy_service_,
|
| - GetPolicies(PolicyNamespace(POLICY_DOMAIN_CHROME,
|
| - std::string())))
|
| - .WillRepeatedly(ReturnRef(policy_map_));
|
| -
|
| - // Arbitrary negative value (so it'll be different from |update_delay_|).
|
| - last_delay_ = base::TimeDelta::FromDays(-1);
|
| - policy_map_.Clear();
|
| - policy_statistics_collector_.reset(new TestPolicyStatisticsCollector(
|
| - policy_details_.GetCallback(),
|
| - chrome_schema_,
|
| - &policy_service_,
|
| - &prefs_,
|
| - task_runner_));
|
| - }
|
| -
|
| - void SetPolicy(const std::string& name) {
|
| - policy_map_.Set(name, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER,
|
| - base::Value::CreateBooleanValue(true), NULL);
|
| - }
|
| -
|
| - base::TimeDelta GetFirstDelay() const {
|
| - if (task_runner_->GetPendingTasks().empty()) {
|
| - ADD_FAILURE();
|
| - return base::TimeDelta();
|
| - }
|
| - return task_runner_->GetPendingTasks().front().delay;
|
| - }
|
| -
|
| - const base::TimeDelta update_delay_;
|
| -
|
| - base::TimeDelta last_delay_;
|
| -
|
| - PolicyDetailsMap policy_details_;
|
| - Schema chrome_schema_;
|
| - TestingPrefServiceSimple prefs_;
|
| - MockPolicyService policy_service_;
|
| - PolicyMap policy_map_;
|
| -
|
| - scoped_refptr<base::TestSimpleTaskRunner> task_runner_;
|
| - scoped_ptr<TestPolicyStatisticsCollector> policy_statistics_collector_;
|
| -};
|
| -
|
| -TEST_F(PolicyStatisticsCollectorTest, CollectPending) {
|
| - SetPolicy(kTestPolicy1);
|
| -
|
| - prefs_.SetInt64(policy_prefs::kLastPolicyStatisticsUpdate,
|
| - (base::Time::Now() - update_delay_).ToInternalValue());
|
| -
|
| - EXPECT_CALL(*policy_statistics_collector_.get(),
|
| - RecordPolicyUse(kTestPolicy1Id));
|
| -
|
| - policy_statistics_collector_->Initialize();
|
| - EXPECT_EQ(1u, task_runner_->GetPendingTasks().size());
|
| - EXPECT_EQ(update_delay_, GetFirstDelay());
|
| -}
|
| -
|
| -TEST_F(PolicyStatisticsCollectorTest, CollectPendingVeryOld) {
|
| - SetPolicy(kTestPolicy1);
|
| -
|
| - // Must not be 0.0 (read comment for Time::FromDoubleT).
|
| - prefs_.SetInt64(policy_prefs::kLastPolicyStatisticsUpdate,
|
| - base::Time::FromDoubleT(1.0).ToInternalValue());
|
| -
|
| - EXPECT_CALL(*policy_statistics_collector_.get(),
|
| - RecordPolicyUse(kTestPolicy1Id));
|
| -
|
| - policy_statistics_collector_->Initialize();
|
| - EXPECT_EQ(1u, task_runner_->GetPendingTasks().size());
|
| - EXPECT_EQ(update_delay_, GetFirstDelay());
|
| -}
|
| -
|
| -TEST_F(PolicyStatisticsCollectorTest, CollectLater) {
|
| - SetPolicy(kTestPolicy1);
|
| -
|
| - prefs_.SetInt64(policy_prefs::kLastPolicyStatisticsUpdate,
|
| - (base::Time::Now() - update_delay_ / 2).ToInternalValue());
|
| -
|
| - policy_statistics_collector_->Initialize();
|
| - EXPECT_EQ(1u, task_runner_->GetPendingTasks().size());
|
| - EXPECT_LT(GetFirstDelay(), update_delay_);
|
| -}
|
| -
|
| -TEST_F(PolicyStatisticsCollectorTest, MultiplePolicies) {
|
| - SetPolicy(kTestPolicy1);
|
| - SetPolicy(kTestPolicy2);
|
| -
|
| - prefs_.SetInt64(policy_prefs::kLastPolicyStatisticsUpdate,
|
| - (base::Time::Now() - update_delay_).ToInternalValue());
|
| -
|
| - EXPECT_CALL(*policy_statistics_collector_.get(),
|
| - RecordPolicyUse(kTestPolicy1Id));
|
| - EXPECT_CALL(*policy_statistics_collector_.get(),
|
| - RecordPolicyUse(kTestPolicy2Id));
|
| -
|
| - policy_statistics_collector_->Initialize();
|
| - EXPECT_EQ(1u, task_runner_->GetPendingTasks().size());
|
| -}
|
| -
|
| -} // namespace policy
|
|
|