Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "chrome/browser/chromeos/policy/cloud_external_data_manager_base_test_u til.h" | |
| 6 | |
| 7 #include "base/callback.h" | |
| 8 #include "base/memory/weak_ptr.h" | |
| 9 #include "base/sha1.h" | |
| 10 #include "base/strings/string_number_conversions.h" | |
| 11 #include "base/values.h" | |
| 12 #include "chrome/browser/policy/cloud/cloud_external_data_manager.h" | |
| 13 #include "chrome/browser/policy/cloud/cloud_policy_core.h" | |
| 14 #include "chrome/browser/policy/cloud/cloud_policy_store.h" | |
| 15 #include "chrome/browser/policy/external_data_fetcher.h" | |
| 16 #include "chrome/browser/policy/policy_map.h" | |
| 17 #include "chrome/browser/policy/policy_types.h" | |
| 18 #include "testing/gtest/include/gtest/gtest.h" | |
| 19 | |
| 20 namespace policy { | |
| 21 namespace test { | |
| 22 | |
| 23 void ExternalDataFetchCallback(scoped_ptr<std::string>* destination, | |
| 24 const base::Closure& done_callback, | |
| 25 scoped_ptr<std::string> data) { | |
| 26 destination->reset(data.release()); | |
|
Joao da Silva
2013/11/04 09:16:51
*destination = data.Pass(); also works
bartfab (slow)
2013/11/04 16:03:47
Done.
| |
| 27 done_callback.Run(); | |
| 28 } | |
| 29 | |
| 30 scoped_ptr<base::DictionaryValue> ConstructExternalDataReference( | |
| 31 const std::string& url, | |
| 32 const std::string& data) { | |
| 33 const std::string hash = base::SHA1HashString(data); | |
| 34 scoped_ptr<base::DictionaryValue> metadata(new base::DictionaryValue); | |
| 35 metadata->SetStringWithoutPathExpansion("url", url); | |
| 36 metadata->SetStringWithoutPathExpansion("hash", base::HexEncode(hash.c_str(), | |
| 37 hash.size())); | |
| 38 return metadata.Pass(); | |
| 39 } | |
| 40 | |
| 41 void SetExternalDataReference(CloudPolicyCore* core, | |
| 42 const std::string& policy, | |
| 43 scoped_ptr<base::DictionaryValue> metadata) { | |
| 44 CloudPolicyStore* store = core->store(); | |
| 45 ASSERT_TRUE(store); | |
| 46 PolicyMap policy_map; | |
| 47 policy_map.Set(policy, | |
| 48 POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, | |
| 49 metadata.release(), | |
| 50 new ExternalDataFetcher(store->external_data_manager(), | |
| 51 policy)); | |
| 52 store->SetPolicyMapForTesting(policy_map); | |
| 53 } | |
| 54 | |
| 55 } // namespace test | |
| 56 } // namespace policy | |
| OLD | NEW |