| Index: chrome/browser/policy/policy_map_unittest.cc
|
| diff --git a/chrome/browser/policy/policy_map_unittest.cc b/chrome/browser/policy/policy_map_unittest.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..01aad95b352dad75da64e8343833c0f56936fe77
|
| --- /dev/null
|
| +++ b/chrome/browser/policy/policy_map_unittest.cc
|
| @@ -0,0 +1,68 @@
|
| +// Copyright (c) 2011 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 "chrome/browser/policy/policy_map.h"
|
| +
|
| +#include "base/scoped_ptr.h"
|
| +#include "policy/configuration_policy_type.h"
|
| +#include "testing/gtest/include/gtest/gtest.h"
|
| +
|
| +namespace policy {
|
| +
|
| +TEST(PolicyMapTest, SetAndGet) {
|
| + PolicyMap map;
|
| + map.Set(kPolicyHomepageLocation, Value::CreateStringValue("aaa"));
|
| + StringValue expected("aaa");
|
| + EXPECT_TRUE(expected.Equals(map.Get(kPolicyHomepageLocation)));
|
| + map.Set(kPolicyHomepageLocation, Value::CreateStringValue("bbb"));
|
| + StringValue expected_b("bbb");
|
| + EXPECT_TRUE(expected_b.Equals(map.Get(kPolicyHomepageLocation)));
|
| +}
|
| +
|
| +TEST(PolicyMapTest, Equals) {
|
| + PolicyMap a;
|
| + a.Set(kPolicyHomepageLocation, Value::CreateStringValue("aaa"));
|
| + PolicyMap a2;
|
| + a2.Set(kPolicyHomepageLocation, Value::CreateStringValue("aaa"));
|
| + PolicyMap b;
|
| + b.Set(kPolicyHomepageLocation, Value::CreateStringValue("bbb"));
|
| + PolicyMap c;
|
| + c.Set(kPolicyHomepageLocation, Value::CreateStringValue("aaa"));
|
| + c.Set(kPolicyHomepageIsNewTabPage, Value::CreateBooleanValue(true));
|
| + EXPECT_FALSE(a.Equals(b));
|
| + EXPECT_FALSE(b.Equals(a));
|
| + EXPECT_FALSE(a.Equals(c));
|
| + EXPECT_FALSE(c.Equals(a));
|
| + EXPECT_TRUE(a.Equals(a2));
|
| + EXPECT_TRUE(a2.Equals(a));
|
| + PolicyMap empty1;
|
| + PolicyMap empty2;
|
| + EXPECT_TRUE(empty1.Equals(empty2));
|
| + EXPECT_TRUE(empty2.Equals(empty1));
|
| + EXPECT_FALSE(empty1.Equals(a));
|
| + EXPECT_FALSE(a.Equals(empty1));
|
| +}
|
| +
|
| +TEST(PolicyMapTest, Swap) {
|
| + PolicyMap a;
|
| + a.Set(kPolicyHomepageLocation, Value::CreateStringValue("aaa"));
|
| + PolicyMap b;
|
| + b.Set(kPolicyHomepageLocation, Value::CreateStringValue("bbb"));
|
| + b.Set(kPolicyHomepageIsNewTabPage, Value::CreateBooleanValue(true));
|
| + a.Swap(&b);
|
| + StringValue expected("bbb");
|
| + EXPECT_TRUE(expected.Equals(a.Get(kPolicyHomepageLocation)));
|
| + FundamentalValue expected_bool(true);
|
| + EXPECT_TRUE(expected_bool.Equals(a.Get(kPolicyHomepageIsNewTabPage)));
|
| + StringValue expected_a("aaa");
|
| + EXPECT_TRUE(expected_a.Equals(b.Get(kPolicyHomepageLocation)));
|
| +
|
| + b.Clear();
|
| + a.Swap(&b);
|
| + PolicyMap empty;
|
| + EXPECT_TRUE(a.Equals(empty));
|
| + EXPECT_FALSE(b.Equals(empty));
|
| +}
|
| +
|
| +} // namespace policy
|
|
|