Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / components / policy / core / common / preferences_mock_mac.h
blob8f3df0c8c7783b16fd541a138e069babc7620713
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.
5 #ifndef COMPONENTS_POLICY_CORE_COMMON_PREFERENCES_MOCK_MAC_H_
6 #define COMPONENTS_POLICY_CORE_COMMON_PREFERENCES_MOCK_MAC_H_
8 #include "base/mac/scoped_cftyperef.h"
9 #include "components/policy/core/common/preferences_mac.h"
10 #include "components/policy/policy_export.h"
12 // Mock preferences wrapper for testing code that interacts with CFPreferences.
13 class POLICY_EXPORT MockPreferences : public MacPreferences {
14 public:
15 MockPreferences();
16 ~MockPreferences() override;
18 Boolean AppSynchronize(CFStringRef applicationID) override;
20 CFPropertyListRef CopyAppValue(CFStringRef key,
21 CFStringRef applicationID) override;
23 Boolean AppValueIsForced(CFStringRef key, CFStringRef applicationID) override;
25 // Adds a preference item with the given info to the test set.
26 void AddTestItem(CFStringRef key, CFPropertyListRef value, bool is_forced);
28 private:
29 base::ScopedCFTypeRef<CFMutableDictionaryRef> values_;
30 base::ScopedCFTypeRef<CFMutableSetRef> forced_;
33 #endif // COMPONENTS_POLICY_CORE_COMMON_PREFERENCES_MOCK_MAC_H_