OLD | NEW |
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 "chrome/browser/chromeos/policy/user_cloud_policy_store_chromeos.h" | 5 #include "chrome/browser/chromeos/policy/user_cloud_policy_store_chromeos.h" |
6 | 6 |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
11 #include "base/files/file_util.h" | 11 #include "base/files/file_util.h" |
12 #include "base/files/scoped_temp_dir.h" | 12 #include "base/files/scoped_temp_dir.h" |
13 #include "base/memory/scoped_ptr.h" | 13 #include "base/memory/scoped_ptr.h" |
14 #include "base/message_loop/message_loop.h" | 14 #include "base/message_loop/message_loop.h" |
15 #include "base/threading/sequenced_worker_pool.h" | 15 #include "base/threading/sequenced_worker_pool.h" |
16 #include "chromeos/dbus/mock_cryptohome_client.h" | 16 #include "chromeos/dbus/mock_cryptohome_client.h" |
17 #include "chromeos/dbus/mock_session_manager_client.h" | 17 #include "chromeos/dbus/mock_session_manager_client.h" |
18 #include "components/policy/core/common/cloud/cloud_policy_constants.h" | 18 #include "components/policy/core/common/cloud/cloud_policy_constants.h" |
19 #include "components/policy/core/common/cloud/mock_cloud_policy_store.h" | 19 #include "components/policy/core/common/cloud/mock_cloud_policy_store.h" |
20 #include "components/policy/core/common/cloud/policy_builder.h" | 20 #include "components/policy/core/common/cloud/policy_builder.h" |
21 #include "components/policy/core/common/policy_types.h" | |
22 #include "policy/policy_constants.h" | 21 #include "policy/policy_constants.h" |
23 #include "policy/proto/cloud_policy.pb.h" | 22 #include "policy/proto/cloud_policy.pb.h" |
24 #include "policy/proto/device_management_local.pb.h" | 23 #include "policy/proto/device_management_local.pb.h" |
25 #include "testing/gmock/include/gmock/gmock.h" | 24 #include "testing/gmock/include/gmock/gmock.h" |
26 #include "testing/gtest/include/gtest/gtest.h" | 25 #include "testing/gtest/include/gtest/gtest.h" |
27 | 26 |
28 namespace em = enterprise_management; | 27 namespace em = enterprise_management; |
29 | 28 |
30 using testing::AllOf; | 29 using testing::AllOf; |
31 using testing::AnyNumber; | 30 using testing::AnyNumber; |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 Mock::VerifyAndClearExpectations(&session_manager_client_); | 149 Mock::VerifyAndClearExpectations(&session_manager_client_); |
151 ASSERT_FALSE(store_callback.is_null()); | 150 ASSERT_FALSE(store_callback.is_null()); |
152 | 151 |
153 // The new policy shouldn't be present yet. | 152 // The new policy shouldn't be present yet. |
154 PolicyMap previous_policy; | 153 PolicyMap previous_policy; |
155 EXPECT_EQ(previous_value != NULL, store_->policy() != NULL); | 154 EXPECT_EQ(previous_value != NULL, store_->policy() != NULL); |
156 if (previous_value) { | 155 if (previous_value) { |
157 previous_policy.Set(key::kHomepageLocation, | 156 previous_policy.Set(key::kHomepageLocation, |
158 POLICY_LEVEL_MANDATORY, | 157 POLICY_LEVEL_MANDATORY, |
159 POLICY_SCOPE_USER, | 158 POLICY_SCOPE_USER, |
160 POLICY_SOURCE_CLOUD, | |
161 new base::StringValue(previous_value), NULL); | 159 new base::StringValue(previous_value), NULL); |
162 } | 160 } |
163 EXPECT_TRUE(previous_policy.Equals(store_->policy_map())); | 161 EXPECT_TRUE(previous_policy.Equals(store_->policy_map())); |
164 EXPECT_EQ(CloudPolicyStore::STATUS_OK, store_->status()); | 162 EXPECT_EQ(CloudPolicyStore::STATUS_OK, store_->status()); |
165 | 163 |
166 // Store the new public key so that the validation after the retrieve | 164 // Store the new public key so that the validation after the retrieve |
167 // operation completes can verify the signature. | 165 // operation completes can verify the signature. |
168 if (new_public_key) | 166 if (new_public_key) |
169 StoreUserPolicyKey(*new_public_key); | 167 StoreUserPolicyKey(*new_public_key); |
170 | 168 |
(...skipping 498 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
669 Mock::VerifyAndClearExpectations(&cryptohome_client_); | 667 Mock::VerifyAndClearExpectations(&cryptohome_client_); |
670 | 668 |
671 EXPECT_FALSE(store_->policy()); | 669 EXPECT_FALSE(store_->policy()); |
672 EXPECT_TRUE(store_->policy_map().empty()); | 670 EXPECT_TRUE(store_->policy_map().empty()); |
673 EXPECT_EQ(CloudPolicyStore::STATUS_VALIDATION_ERROR, store_->status()); | 671 EXPECT_EQ(CloudPolicyStore::STATUS_VALIDATION_ERROR, store_->status()); |
674 } | 672 } |
675 | 673 |
676 } // namespace | 674 } // namespace |
677 | 675 |
678 } // namespace policy | 676 } // namespace policy |
OLD | NEW |