Index: test/cctest/libplatform/test-tracing.cc |
diff --git a/test/cctest/libplatform/test-tracing.cc b/test/cctest/libplatform/test-tracing.cc |
index 2e15d6af9e0e356f256b00eb0784fb248db196d3..069316d73f816c7870683cef42ffeb1636d60ce8 100644 |
--- a/test/cctest/libplatform/test-tracing.cc |
+++ b/test/cctest/libplatform/test-tracing.cc |
@@ -44,6 +44,18 @@ TEST(TestTraceObject) { |
CHECK_EQ(0, trace_object.cpu_duration()); |
} |
+class ConvertableToTraceFormatMock : public v8::ConvertableToTraceFormat { |
+ public: |
+ explicit ConvertableToTraceFormatMock(int value) : value_(value) {} |
+ |
+ void AppendAsTraceFormat(std::string* out) const override { |
+ *out += "[" + std::to_string(value_) + "," + std::to_string(value_) + "]"; |
+ } |
+ |
+ private: |
+ int value_; |
+}; |
+ |
class MockTraceWriter : public TraceWriter { |
public: |
void AppendTraceEvent(TraceObject* trace_event) override { |
@@ -264,6 +276,12 @@ TEST(TestTracingControllerMultipleArgsAndCopy) { |
mm = "CHANGED"; |
mmm = "CHANGED"; |
+ TRACE_EVENT_INSTANT1("v8", "v8.Test", TRACE_EVENT_SCOPE_THREAD, "a1", |
+ new ConvertableToTraceFormatMock(42)); |
+ TRACE_EVENT_INSTANT2("v8", "v8.Test", TRACE_EVENT_SCOPE_THREAD, "a1", |
+ new ConvertableToTraceFormatMock(42), "a2", |
+ new ConvertableToTraceFormatMock(123)); |
+ |
tracing_controller.StopTracing(); |
} |
@@ -274,7 +292,7 @@ TEST(TestTracingControllerMultipleArgsAndCopy) { |
GetJSONStrings(all_names, trace_str, "\"name\"", "\"", "\""); |
GetJSONStrings(all_cats, trace_str, "\"cat\"", "\"", "\""); |
- CHECK_EQ(all_args.size(), 22); |
+ CHECK_EQ(all_args.size(), 24); |
CHECK_EQ(all_args[0], "\"aa\":11"); |
CHECK_EQ(all_args[1], "\"bb\":22"); |
CHECK_EQ(all_args[2], "\"cc\":33"); |
@@ -303,6 +321,8 @@ TEST(TestTracingControllerMultipleArgsAndCopy) { |
CHECK_EQ(all_names[20], "INIT"); |
CHECK_EQ(all_names[21], "INIT"); |
CHECK_EQ(all_args[21], "\"mm1\":\"INIT\",\"mm2\":\"\\\"INIT\\\"\""); |
+ CHECK_EQ(all_args[22], "\"a1\":[42,42]"); |
+ CHECK_EQ(all_args[23], "\"a1\":[42,42],\"a2\":[123,123]"); |
i::V8::SetPlatformForTesting(old_platform); |
} |