| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #include <cstring> | 5 #include <cstring> |
| 6 | 6 |
| 7 #include "platform/assert.h" | 7 #include "platform/assert.h" |
| 8 | 8 |
| 9 #include "vm/dart_api_impl.h" | 9 #include "vm/dart_api_impl.h" |
| 10 #include "vm/dart_api_state.h" | 10 #include "vm/dart_api_state.h" |
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 154 // Check phase. | 154 // Check phase. |
| 155 EXPECT_SUBSTRING("\"ph\":\"X\"", js.ToCString()); | 155 EXPECT_SUBSTRING("\"ph\":\"X\"", js.ToCString()); |
| 156 // Check that ts key is present. | 156 // Check that ts key is present. |
| 157 EXPECT_SUBSTRING("\"ts\":", js.ToCString()); | 157 EXPECT_SUBSTRING("\"ts\":", js.ToCString()); |
| 158 // Check that dur key is present. | 158 // Check that dur key is present. |
| 159 EXPECT_SUBSTRING("\"dur\":", js.ToCString()); | 159 EXPECT_SUBSTRING("\"dur\":", js.ToCString()); |
| 160 } | 160 } |
| 161 event.DurationEnd(); | 161 event.DurationEnd(); |
| 162 } | 162 } |
| 163 | 163 |
| 164 #if defined(HOST_OS_ANDROID) || defined(HOST_OS_LINUX) |
| 164 TEST_CASE(TimelineEventPrintSystrace) { | 165 TEST_CASE(TimelineEventPrintSystrace) { |
| 165 const intptr_t kBufferLength = 1024; | 166 const intptr_t kBufferLength = 1024; |
| 166 char buffer[kBufferLength]; | 167 char buffer[kBufferLength]; |
| 167 | 168 |
| 168 // Create a test stream. | 169 // Create a test stream. |
| 169 TimelineStream stream; | 170 TimelineStream stream; |
| 170 stream.Init("testStream", true); | 171 stream.Init("testStream", true); |
| 171 | 172 |
| 172 // Create a test event. | 173 // Create a test event. |
| 173 TimelineEvent event; | 174 TimelineEvent event; |
| 174 TimelineTestHelper::SetStream(&event, &stream); | 175 TimelineTestHelper::SetStream(&event, &stream); |
| 175 | 176 |
| 176 // Test a Begin event. | 177 // Test a Begin event. |
| 177 event.Begin("apple", 1, 2); | 178 event.Begin("apple", 1, 2); |
| 178 event.PrintSystrace(&buffer[0], kBufferLength); | 179 TimelineEventSystraceRecorder::PrintSystrace(&event, &buffer[0], |
| 180 kBufferLength); |
| 179 EXPECT_SUBSTRING("|apple", buffer); | 181 EXPECT_SUBSTRING("|apple", buffer); |
| 180 EXPECT_SUBSTRING("B|", buffer); | 182 EXPECT_SUBSTRING("B|", buffer); |
| 181 | 183 |
| 182 // Test an End event. | 184 // Test an End event. |
| 183 event.End("apple", 2, 3); | 185 event.End("apple", 2, 3); |
| 184 event.PrintSystrace(&buffer[0], kBufferLength); | 186 TimelineEventSystraceRecorder::PrintSystrace(&event, &buffer[0], |
| 187 kBufferLength); |
| 185 EXPECT_STREQ("E", buffer); | 188 EXPECT_STREQ("E", buffer); |
| 186 | 189 |
| 187 // Test a Counter event. We only report the first counter value (in this case | 190 // Test a Counter event. We only report the first counter value (in this case |
| 188 // "4"). | 191 // "4"). |
| 189 event.Counter("CTR", 1); | 192 event.Counter("CTR", 1); |
| 190 // We have two counters. | 193 // We have two counters. |
| 191 event.SetNumArguments(2); | 194 event.SetNumArguments(2); |
| 192 // Set the first counter value. | 195 // Set the first counter value. |
| 193 event.CopyArgument(0, "cats", "4"); | 196 event.CopyArgument(0, "cats", "4"); |
| 194 // Set the second counter value. | 197 // Set the second counter value. |
| 195 event.CopyArgument(1, "dogs", "1"); | 198 event.CopyArgument(1, "dogs", "1"); |
| 196 event.PrintSystrace(&buffer[0], kBufferLength); | 199 TimelineEventSystraceRecorder::PrintSystrace(&event, &buffer[0], |
| 200 kBufferLength); |
| 197 EXPECT_SUBSTRING("C|", buffer); | 201 EXPECT_SUBSTRING("C|", buffer); |
| 198 EXPECT_SUBSTRING("|CTR|4", buffer); | 202 EXPECT_SUBSTRING("|CTR|4", buffer); |
| 199 | 203 |
| 200 // Test a duration event. This event kind is not supported so we should | 204 // Test a duration event. This event kind is not supported so we should |
| 201 // serialize it to an empty string. | 205 // serialize it to an empty string. |
| 202 event.Duration("DUR", 0, 1, 2, 3); | 206 event.Duration("DUR", 0, 1, 2, 3); |
| 203 event.PrintSystrace(&buffer[0], kBufferLength); | 207 TimelineEventSystraceRecorder::PrintSystrace(&event, &buffer[0], |
| 208 kBufferLength); |
| 204 EXPECT_STREQ("", buffer); | 209 EXPECT_STREQ("", buffer); |
| 205 } | 210 } |
| 211 #endif // defined(HOST_OS_ANDROID) || defined(HOST_OS_LINUX) |
| 206 | 212 |
| 207 TEST_CASE(TimelineEventArguments) { | 213 TEST_CASE(TimelineEventArguments) { |
| 208 // Create a test stream. | 214 // Create a test stream. |
| 209 TimelineStream stream; | 215 TimelineStream stream; |
| 210 stream.Init("testStream", true); | 216 stream.Init("testStream", true); |
| 211 | 217 |
| 212 // Create a test event. | 218 // Create a test event. |
| 213 TimelineEvent event; | 219 TimelineEvent event; |
| 214 TimelineTestHelper::SetStream(&event, &stream); | 220 TimelineTestHelper::SetStream(&event, &stream); |
| 215 | 221 |
| (...skipping 663 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 879 EXPECT(pauses.has_error()); | 885 EXPECT(pauses.has_error()); |
| 880 } | 886 } |
| 881 TimelineTestHelper::Clear(recorder); | 887 TimelineTestHelper::Clear(recorder); |
| 882 | 888 |
| 883 delete recorder; | 889 delete recorder; |
| 884 } | 890 } |
| 885 | 891 |
| 886 #endif // !PRODUCT | 892 #endif // !PRODUCT |
| 887 | 893 |
| 888 } // namespace dart | 894 } // namespace dart |
| OLD | NEW |