| Index: components/user_prefs/tracked/pref_hash_store_impl_unittest.cc
|
| diff --git a/components/user_prefs/tracked/pref_hash_store_impl_unittest.cc b/components/user_prefs/tracked/pref_hash_store_impl_unittest.cc
|
| index 6dae7719a21459a2d606ea7a5ebfbc7240b57867..f5d92182a530bff5bc8f386e1fbc7a27039f5ad9 100644
|
| --- a/components/user_prefs/tracked/pref_hash_store_impl_unittest.cc
|
| +++ b/components/user_prefs/tracked/pref_hash_store_impl_unittest.cc
|
| @@ -30,6 +30,45 @@ class PrefHashStoreImplTest : public testing::Test {
|
| DISALLOW_COPY_AND_ASSIGN(PrefHashStoreImplTest);
|
| };
|
|
|
| +TEST_F(PrefHashStoreImplTest, ComputeMac) {
|
| + base::StringValue string_1("string1");
|
| + base::StringValue string_2("string2");
|
| + PrefHashStoreImpl pref_hash_store(std::string(32, 0), "device_id", true);
|
| +
|
| + std::string computed_mac_1 = pref_hash_store.ComputeMac("path1", &string_1);
|
| + std::string computed_mac_2 = pref_hash_store.ComputeMac("path1", &string_2);
|
| + std::string computed_mac_3 = pref_hash_store.ComputeMac("path2", &string_1);
|
| +
|
| + // Quick sanity checks here, see pref_hash_calculator_unittest.cc for more
|
| + // complete tests.
|
| + EXPECT_EQ(computed_mac_1, pref_hash_store.ComputeMac("path1", &string_1));
|
| + EXPECT_NE(computed_mac_1, computed_mac_2);
|
| + EXPECT_NE(computed_mac_1, computed_mac_3);
|
| + EXPECT_EQ(64U, computed_mac_1.size());
|
| +}
|
| +
|
| +TEST_F(PrefHashStoreImplTest, ComputeSplitMacs) {
|
| + base::DictionaryValue dict;
|
| + dict.Set("a", new base::StringValue("string1"));
|
| + dict.Set("b", new base::StringValue("string2"));
|
| + PrefHashStoreImpl pref_hash_store(std::string(32, 0), "device_id", true);
|
| +
|
| + std::unique_ptr<base::DictionaryValue> computed_macs =
|
| + pref_hash_store.ComputeSplitMacs("foo.bar", &dict);
|
| +
|
| + std::string mac_1;
|
| + std::string mac_2;
|
| + ASSERT_TRUE(computed_macs->GetString("a", &mac_1));
|
| + ASSERT_TRUE(computed_macs->GetString("b", &mac_2));
|
| +
|
| + EXPECT_EQ(2U, computed_macs->size());
|
| +
|
| + base::StringValue string_1("string1");
|
| + base::StringValue string_2("string2");
|
| + EXPECT_EQ(pref_hash_store.ComputeMac("foo.bar.a", &string_1), mac_1);
|
| + EXPECT_EQ(pref_hash_store.ComputeMac("foo.bar.b", &string_2), mac_2);
|
| +}
|
| +
|
| TEST_F(PrefHashStoreImplTest, AtomicHashStoreAndCheck) {
|
| base::StringValue string_1("string1");
|
| base::StringValue string_2("string2");
|
|
|