OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 #ifndef CHROME_BROWSER_POLICY_MOCK_DEVICE_MANAGEMENT_BACKEND_H_ | 5 #ifndef CHROME_BROWSER_POLICY_MOCK_DEVICE_MANAGEMENT_BACKEND_H_ |
6 #define CHROME_BROWSER_POLICY_MOCK_DEVICE_MANAGEMENT_BACKEND_H_ | 6 #define CHROME_BROWSER_POLICY_MOCK_DEVICE_MANAGEMENT_BACKEND_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <map> | 9 #include <map> |
10 #include <string> | 10 #include <string> |
11 | 11 |
| 12 #include "base/time.h" |
12 #include "base/values.h" | 13 #include "base/values.h" |
13 #include "chrome/browser/policy/device_management_backend.h" | 14 #include "chrome/browser/policy/device_management_backend.h" |
14 #include "chrome/browser/policy/proto/device_management_constants.h" | 15 #include "chrome/browser/policy/proto/device_management_constants.h" |
15 #include "testing/gmock/include/gmock/gmock.h" | 16 #include "testing/gmock/include/gmock/gmock.h" |
16 #include "testing/gtest/include/gtest/gtest.h" | 17 #include "testing/gtest/include/gtest/gtest.h" |
17 | 18 |
18 namespace policy { | 19 namespace policy { |
19 | 20 |
20 namespace em = enterprise_management; | 21 namespace em = enterprise_management; |
21 | 22 |
(...skipping 17 matching lines...) Expand all Loading... |
39 const std::string& device_id, | 40 const std::string& device_id, |
40 const em::DeviceUnregisterRequest& request, | 41 const em::DeviceUnregisterRequest& request, |
41 DeviceUnregisterResponseDelegate* delegate)); | 42 DeviceUnregisterResponseDelegate* delegate)); |
42 | 43 |
43 MOCK_METHOD4(ProcessPolicyRequest, void( | 44 MOCK_METHOD4(ProcessPolicyRequest, void( |
44 const std::string& device_management_token, | 45 const std::string& device_management_token, |
45 const std::string& device_id, | 46 const std::string& device_id, |
46 const em::DevicePolicyRequest& request, | 47 const em::DevicePolicyRequest& request, |
47 DevicePolicyResponseDelegate* delegate)); | 48 DevicePolicyResponseDelegate* delegate)); |
48 | 49 |
| 50 MOCK_METHOD4(ProcessCloudPolicyRequest, void( |
| 51 const std::string& device_management_token, |
| 52 const std::string& device_id, |
| 53 const em::CloudPolicyRequest& request, |
| 54 DevicePolicyResponseDelegate* delegate)); |
| 55 |
49 private: | 56 private: |
50 DISALLOW_COPY_AND_ASSIGN(MockDeviceManagementBackend); | 57 DISALLOW_COPY_AND_ASSIGN(MockDeviceManagementBackend); |
51 }; | 58 }; |
52 | 59 |
53 ACTION(MockDeviceManagementBackendSucceedRegister) { | 60 ACTION(MockDeviceManagementBackendSucceedRegister) { |
54 em::DeviceRegisterResponse response; | 61 em::DeviceRegisterResponse response; |
55 std::string token("FAKE_DEVICE_TOKEN_"); | 62 std::string token("FAKE_DEVICE_TOKEN_"); |
56 static int next_token_suffix; | 63 static int next_token_suffix; |
57 token += next_token_suffix++; | 64 token += next_token_suffix++; |
58 response.set_device_management_token(token); | 65 response.set_device_management_token(token); |
59 arg3->HandleRegisterResponse(response); | 66 arg3->HandleRegisterResponse(response); |
60 } | 67 } |
61 | 68 |
62 ACTION_P2(MockDeviceManagementBackendSucceedBooleanPolicy, name, value) { | 69 ACTION_P2(MockDeviceManagementBackendSucceedBooleanPolicy, name, value) { |
63 em::DevicePolicyResponse response; | 70 em::DevicePolicyResponse response; |
64 em::DevicePolicySetting* setting = response.add_setting(); | 71 em::DevicePolicySetting* setting = response.add_setting(); |
65 setting->set_policy_key(kChromeDevicePolicySettingKey); | 72 setting->set_policy_key(kChromeDevicePolicySettingKey); |
66 setting->set_watermark("fresh"); | 73 setting->set_watermark("fresh"); |
67 em::GenericSetting* policy_value = setting->mutable_policy_value(); | 74 em::GenericSetting* policy_value = setting->mutable_policy_value(); |
68 em::GenericNamedValue* named_value = policy_value->add_named_value(); | 75 em::GenericNamedValue* named_value = policy_value->add_named_value(); |
69 named_value->set_name(name); | 76 named_value->set_name(name); |
70 named_value->mutable_value()->set_value_type( | 77 named_value->mutable_value()->set_value_type( |
71 em::GenericValue::VALUE_TYPE_BOOL); | 78 em::GenericValue::VALUE_TYPE_BOOL); |
72 named_value->mutable_value()->set_bool_value(value); | 79 named_value->mutable_value()->set_bool_value(value); |
73 arg3->HandlePolicyResponse(response); | 80 arg3->HandlePolicyResponse(response); |
74 } | 81 } |
75 | 82 |
| 83 ACTION(MockDeviceManagementBackendSucceedSpdyCloudPolicy) { |
| 84 em::SignedCloudPolicyResponse signed_response; |
| 85 em::CloudPolicySettings* settings = signed_response.mutable_settings(); |
| 86 em::DisableSpdyProto* spdy_proto = settings->mutable_disablespdy(); |
| 87 spdy_proto->set_disablespdy(true); |
| 88 spdy_proto->mutable_policy_options()->set_mode(em::PolicyOptions::MANDATORY); |
| 89 signed_response.set_timestamp(base::Time::NowFromSystemTime().ToTimeT()); |
| 90 std::string serialized_signed_response; |
| 91 EXPECT_TRUE(signed_response.SerializeToString(&serialized_signed_response)); |
| 92 em::CloudPolicyResponse response; |
| 93 response.set_signed_response(serialized_signed_response); |
| 94 // TODO(jkummerow): Set proper certificate_chain and signature (when |
| 95 // implementing support for signature verification). |
| 96 response.set_signature("TODO"); |
| 97 response.add_certificate_chain("TODO"); |
| 98 arg3->HandleCloudPolicyResponse(response); |
| 99 } |
| 100 |
76 ACTION_P(MockDeviceManagementBackendFailRegister, error) { | 101 ACTION_P(MockDeviceManagementBackendFailRegister, error) { |
77 arg3->OnError(error); | 102 arg3->OnError(error); |
78 } | 103 } |
79 | 104 |
80 ACTION_P(MockDeviceManagementBackendFailPolicy, error) { | 105 ACTION_P(MockDeviceManagementBackendFailPolicy, error) { |
81 arg3->OnError(error); | 106 arg3->OnError(error); |
82 } | 107 } |
83 | 108 |
84 } // namespace policy | 109 } // namespace policy |
85 | 110 |
86 #endif // CHROME_BROWSER_POLICY_MOCK_DEVICE_MANAGEMENT_BACKEND_H_ | 111 #endif // CHROME_BROWSER_POLICY_MOCK_DEVICE_MANAGEMENT_BACKEND_H_ |
OLD | NEW |