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
3 // found in the LICENSE file.
5 #ifndef BASE_TEST_VALUES_TEST_UTIL_H_
6 #define BASE_TEST_VALUES_TEST_UTIL_H_
10 #include "base/memory/scoped_ptr.h"
11 #include "base/strings/string_piece.h"
14 class DictionaryValue
;
19 // All the functions below expect that the value for the given key in
20 // the given dictionary equals the given expected value.
22 void ExpectDictBooleanValue(bool expected_value
,
23 const DictionaryValue
& value
,
24 const std::string
& key
);
26 void ExpectDictDictionaryValue(const DictionaryValue
& expected_value
,
27 const DictionaryValue
& value
,
28 const std::string
& key
);
30 void ExpectDictIntegerValue(int expected_value
,
31 const DictionaryValue
& value
,
32 const std::string
& key
);
34 void ExpectDictListValue(const ListValue
& expected_value
,
35 const DictionaryValue
& value
,
36 const std::string
& key
);
38 void ExpectDictStringValue(const std::string
& expected_value
,
39 const DictionaryValue
& value
,
40 const std::string
& key
);
42 // Takes ownership of |actual|.
43 void ExpectStringValue(const std::string
& expected_str
,
48 // Parses |json| as JSON, allowing trailing commas, and returns the
49 // resulting value. If the json fails to parse, causes an EXPECT
50 // failure and returns the Null Value (but never a NULL pointer).
51 scoped_ptr
<Value
> ParseJson(base::StringPiece json
);
56 #endif // BASE_TEST_VALUES_TEST_UTIL_H_