OLD | NEW |
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2014 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 #include "base/trace_event/trace_event_argument.h" | 5 #include "base/trace_event/trace_event_argument.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
124 | 124 |
125 std::string json; | 125 std::string json; |
126 value->AppendAsTraceFormat(&json); | 126 value->AppendAsTraceFormat(&json); |
127 EXPECT_EQ( | 127 EXPECT_EQ( |
128 "{\"outer_dict\":{\"inner_list\":[false,1,\"in_list\",{\"bool\":true," | 128 "{\"outer_dict\":{\"inner_list\":[false,1,\"in_list\",{\"bool\":true," |
129 "\"double\":42.0,\"int\":42,\"string\":\"ab\"}]}}", | 129 "\"double\":42.0,\"int\":42,\"string\":\"ab\"}]}}", |
130 json); | 130 json); |
131 } | 131 } |
132 | 132 |
133 TEST(TraceEventArgumentTest, PassTracedValue) { | 133 TEST(TraceEventArgumentTest, PassTracedValue) { |
134 auto dict_value = WrapUnique(new TracedValue()); | 134 auto dict_value = MakeUnique<TracedValue>(); |
135 dict_value->SetInteger("a", 1); | 135 dict_value->SetInteger("a", 1); |
136 | 136 |
137 auto nested_dict_value = WrapUnique(new TracedValue()); | 137 auto nested_dict_value = MakeUnique<TracedValue>(); |
138 nested_dict_value->SetInteger("b", 2); | 138 nested_dict_value->SetInteger("b", 2); |
139 nested_dict_value->BeginArray("c"); | 139 nested_dict_value->BeginArray("c"); |
140 nested_dict_value->AppendString("foo"); | 140 nested_dict_value->AppendString("foo"); |
141 nested_dict_value->EndArray(); | 141 nested_dict_value->EndArray(); |
142 | 142 |
143 dict_value->SetValue("e", *nested_dict_value); | 143 dict_value->SetValue("e", *nested_dict_value); |
144 | 144 |
145 // Check the merged result. | 145 // Check the merged result. |
146 std::string json; | 146 std::string json; |
147 dict_value->AppendAsTraceFormat(&json); | 147 dict_value->AppendAsTraceFormat(&json); |
148 EXPECT_EQ("{\"a\":1,\"e\":{\"b\":2,\"c\":[\"foo\"]}}", json); | 148 EXPECT_EQ("{\"a\":1,\"e\":{\"b\":2,\"c\":[\"foo\"]}}", json); |
149 | 149 |
150 // Check that the passed nestd dict was left unouthced. | 150 // Check that the passed nestd dict was left unouthced. |
151 json = ""; | 151 json = ""; |
152 nested_dict_value->AppendAsTraceFormat(&json); | 152 nested_dict_value->AppendAsTraceFormat(&json); |
153 EXPECT_EQ("{\"b\":2,\"c\":[\"foo\"]}", json); | 153 EXPECT_EQ("{\"b\":2,\"c\":[\"foo\"]}", json); |
154 | 154 |
155 // And that it is still usable. | 155 // And that it is still usable. |
156 nested_dict_value->SetInteger("f", 3); | 156 nested_dict_value->SetInteger("f", 3); |
157 nested_dict_value->BeginDictionary("g"); | 157 nested_dict_value->BeginDictionary("g"); |
158 nested_dict_value->EndDictionary(); | 158 nested_dict_value->EndDictionary(); |
159 json = ""; | 159 json = ""; |
160 nested_dict_value->AppendAsTraceFormat(&json); | 160 nested_dict_value->AppendAsTraceFormat(&json); |
161 EXPECT_EQ("{\"b\":2,\"c\":[\"foo\"],\"f\":3,\"g\":{}}", json); | 161 EXPECT_EQ("{\"b\":2,\"c\":[\"foo\"],\"f\":3,\"g\":{}}", json); |
162 } | 162 } |
163 | 163 |
164 } // namespace trace_event | 164 } // namespace trace_event |
165 } // namespace base | 165 } // namespace base |
OLD | NEW |