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 3 // found in the LICENSE file. 4 5 #include "chrome/browser/preferences_mock_mac.h" 6 7 MockPreferences::MockPreferences() { 8 values_.reset(CFDictionaryCreateMutable(kCFAllocatorDefault, 9 0, 10 &kCFTypeDictionaryKeyCallBacks, 11 &kCFTypeDictionaryValueCallBacks)); 12 forced_.reset(CFSetCreateMutable(kCFAllocatorDefault, 13 0, 14 &kCFTypeSetCallBacks)); 15 } 16 17 MockPreferences::~MockPreferences() { 18 } 19 20 Boolean MockPreferences::AppSynchronize(CFStringRef applicationID) { 21 return true; 22 } 23 24 CFPropertyListRef MockPreferences::CopyAppValue(CFStringRef key, 25 CFStringRef applicationID) { 26 CFPropertyListRef value; 27 Boolean found = CFDictionaryGetValueIfPresent(values_, 28 key, 29 &value); 30 if (!found || !value) 31 return NULL; 32 CFRetain(value); 33 return value; 34 } 35 36 Boolean MockPreferences::AppValueIsForced(CFStringRef key, 37 CFStringRef applicationID) { 38 return CFSetContainsValue(forced_, key); 39 } 40 41 void MockPreferences::AddTestItem(CFStringRef key, 42 CFPropertyListRef value, 43 bool is_forced) { 44 CFDictionarySetValue(values_, key, value); 45 if (is_forced) 46 CFSetAddValue(forced_, key); 47 } 48