| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 "include/dart_debugger_api.h" | 5 #include "include/dart_debugger_api.h" |
| 6 #include "vm/dart_api_impl.h" | 6 #include "vm/dart_api_impl.h" |
| 7 #include "vm/dart_entry.h" | 7 #include "vm/dart_entry.h" |
| 8 #include "vm/debugger.h" | 8 #include "vm/debugger.h" |
| 9 #include "vm/globals.h" | 9 #include "vm/globals.h" |
| 10 #include "vm/message_handler.h" | 10 #include "vm/message_handler.h" |
| (...skipping 856 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 867 | 867 |
| 868 // Request malformed native code. | 868 // Request malformed native code. |
| 869 service_msg = EvalF(h_lib, "[port, ['code', 'native%" Px "'], [], []]", | 869 service_msg = EvalF(h_lib, "[port, ['code', 'native%" Px "'], [], []]", |
| 870 address); | 870 address); |
| 871 Service::HandleIsolateMessage(isolate, service_msg); | 871 Service::HandleIsolateMessage(isolate, service_msg); |
| 872 handler.HandleNextMessage(); | 872 handler.HandleNextMessage(); |
| 873 EXPECT_SUBSTRING("\"message\":\"Malformed code id:", handler.msg()); | 873 EXPECT_SUBSTRING("\"message\":\"Malformed code id:", handler.msg()); |
| 874 } | 874 } |
| 875 | 875 |
| 876 | 876 |
| 877 TEST_CASE(Service_Cpu) { | 877 TEST_CASE(Service_VM) { |
| 878 const char* kScript = | 878 const char* kScript = |
| 879 "var port;\n" // Set to our mock port by C++. | 879 "var port;\n" // Set to our mock port by C++. |
| 880 "\n" | 880 "\n" |
| 881 "main() {\n" | 881 "main() {\n" |
| 882 "}"; | 882 "}"; |
| 883 | 883 |
| 884 Isolate* isolate = Isolate::Current(); | 884 Isolate* isolate = Isolate::Current(); |
| 885 Dart_Handle lib = TestCase::LoadTestScript(kScript, NULL); | 885 Dart_Handle lib = TestCase::LoadTestScript(kScript, NULL); |
| 886 EXPECT_VALID(lib); | 886 EXPECT_VALID(lib); |
| 887 | 887 |
| 888 // Build a mock message handler and wrap it in a dart port. | 888 // Build a mock message handler and wrap it in a dart port. |
| 889 ServiceTestMessageHandler handler; | 889 ServiceTestMessageHandler handler; |
| 890 Dart_Port port_id = PortMap::CreatePort(&handler); | 890 Dart_Port port_id = PortMap::CreatePort(&handler); |
| 891 Dart_Handle port = | 891 Dart_Handle port = |
| 892 Api::NewHandle(isolate, DartLibraryCalls::NewSendPort(port_id)); | 892 Api::NewHandle(isolate, DartLibraryCalls::NewSendPort(port_id)); |
| 893 EXPECT_VALID(port); | 893 EXPECT_VALID(port); |
| 894 EXPECT_VALID(Dart_SetField(lib, NewString("port"), port)); | 894 EXPECT_VALID(Dart_SetField(lib, NewString("port"), port)); |
| 895 | 895 |
| 896 Instance& service_msg = Instance::Handle(); | 896 Instance& service_msg = Instance::Handle(); |
| 897 service_msg = Eval(lib, "[port, ['cpu'], [], []]"); | 897 service_msg = Eval(lib, "[port, ['vm'], [], []]"); |
| 898 | 898 |
| 899 Service::HandleRootMessage(service_msg); | 899 Service::HandleRootMessage(service_msg); |
| 900 handler.HandleNextMessage(); | 900 handler.HandleNextMessage(); |
| 901 EXPECT_SUBSTRING("\"type\":\"CPU\"", handler.msg()); | 901 EXPECT_SUBSTRING("\"type\":\"VM\",\"id\":\"vm\"", handler.msg()); |
| 902 EXPECT_SUBSTRING("\"architecture\"", handler.msg()); |
| 903 EXPECT_SUBSTRING("\"version\"", handler.msg()); |
| 904 EXPECT_SUBSTRING("\"uptime\"", handler.msg()); |
| 905 EXPECT_SUBSTRING("\"isolates\"", handler.msg()); |
| 902 } | 906 } |
| 903 | 907 |
| 904 | 908 |
| 905 TEST_CASE(Service_Coverage) { | 909 TEST_CASE(Service_Coverage) { |
| 906 const char* kScript = | 910 const char* kScript = |
| 907 "var port;\n" // Set to our mock port by C++. | 911 "var port;\n" // Set to our mock port by C++. |
| 908 "\n" | 912 "\n" |
| 909 "var x = 7;\n" | 913 "var x = 7;\n" |
| 910 "main() {\n" | 914 "main() {\n" |
| 911 " x = x * x;\n" | 915 " x = x * x;\n" |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1148 EXPECT_SUBSTRING("\"type\":\"Profile\"", handler.msg()); | 1152 EXPECT_SUBSTRING("\"type\":\"Profile\"", handler.msg()); |
| 1149 | 1153 |
| 1150 service_msg = Eval(h_lib, "[port, ['profile'], ['tags'], ['hidden']]"); | 1154 service_msg = Eval(h_lib, "[port, ['profile'], ['tags'], ['hidden']]"); |
| 1151 Service::HandleIsolateMessage(isolate, service_msg); | 1155 Service::HandleIsolateMessage(isolate, service_msg); |
| 1152 handler.HandleNextMessage(); | 1156 handler.HandleNextMessage(); |
| 1153 // Expect error. | 1157 // Expect error. |
| 1154 EXPECT_SUBSTRING("\"type\":\"Error\"", handler.msg()); | 1158 EXPECT_SUBSTRING("\"type\":\"Error\"", handler.msg()); |
| 1155 } | 1159 } |
| 1156 | 1160 |
| 1157 } // namespace dart | 1161 } // namespace dart |
| OLD | NEW |