| 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 "platform/globals.h" | 5 #include "platform/globals.h" |
| 6 | 6 |
| 7 #include "include/dart_debugger_api.h" | 7 #include "include/dart_debugger_api.h" |
| 8 #include "vm/dart_api_impl.h" | 8 #include "vm/dart_api_impl.h" |
| 9 #include "vm/dart_entry.h" | 9 #include "vm/dart_entry.h" |
| 10 #include "vm/debugger.h" | 10 #include "vm/debugger.h" |
| (...skipping 516 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 527 "{\"type\":\"Null\",\"id\":\"objects\\/null\"," | 527 "{\"type\":\"Null\",\"id\":\"objects\\/null\"," |
| 528 "\"valueAsString\":\"null\",\"class\":", | 528 "\"valueAsString\":\"null\",\"class\":", |
| 529 handler.msg()); | 529 handler.msg()); |
| 530 | 530 |
| 531 // not initialized | 531 // not initialized |
| 532 service_msg = Eval(lib, "[0, port, ['objects', 'not-initialized'], [], []]"); | 532 service_msg = Eval(lib, "[0, port, ['objects', 'not-initialized'], [], []]"); |
| 533 Service::HandleIsolateMessage(isolate, service_msg); | 533 Service::HandleIsolateMessage(isolate, service_msg); |
| 534 handler.HandleNextMessage(); | 534 handler.HandleNextMessage(); |
| 535 handler.filterMsg("vmName"); | 535 handler.filterMsg("vmName"); |
| 536 EXPECT_STREQ( | 536 EXPECT_STREQ( |
| 537 "{\"type\":\"Null\",\"id\":\"objects\\/not-initialized\"," | 537 "{\"type\":\"Sentinel\",\"id\":\"objects\\/not-initialized\"," |
| 538 "\"valueAsString\":\"<not initialized>\"}", | 538 "\"valueAsString\":\"<not initialized>\"}", |
| 539 handler.msg()); | 539 handler.msg()); |
| 540 | 540 |
| 541 // being initialized | 541 // being initialized |
| 542 service_msg = Eval(lib, | 542 service_msg = Eval(lib, |
| 543 "[0, port, ['objects', 'being-initialized'], [], []]"); | 543 "[0, port, ['objects', 'being-initialized'], [], []]"); |
| 544 Service::HandleIsolateMessage(isolate, service_msg); | 544 Service::HandleIsolateMessage(isolate, service_msg); |
| 545 handler.HandleNextMessage(); | 545 handler.HandleNextMessage(); |
| 546 handler.filterMsg("vmName"); | 546 handler.filterMsg("vmName"); |
| 547 EXPECT_STREQ( | 547 EXPECT_STREQ( |
| 548 "{\"type\":\"Null\",\"id\":\"objects\\/being-initialized\"," | 548 "{\"type\":\"Sentinel\",\"id\":\"objects\\/being-initialized\"," |
| 549 "\"valueAsString\":\"<being initialized>\"}", | 549 "\"valueAsString\":\"<being initialized>\"}", |
| 550 handler.msg()); | 550 handler.msg()); |
| 551 | 551 |
| 552 // optimized out | 552 // optimized out |
| 553 service_msg = Eval(lib, "[0, port, ['objects', 'optimized-out'], [], []]"); | 553 service_msg = Eval(lib, "[0, port, ['objects', 'optimized-out'], [], []]"); |
| 554 Service::HandleIsolateMessage(isolate, service_msg); | 554 Service::HandleIsolateMessage(isolate, service_msg); |
| 555 handler.HandleNextMessage(); | 555 handler.HandleNextMessage(); |
| 556 handler.filterMsg("vmName"); | 556 handler.filterMsg("vmName"); |
| 557 EXPECT_STREQ( | 557 EXPECT_STREQ( |
| 558 "{\"type\":\"Null\",\"id\":\"objects\\/optimized-out\"," | 558 "{\"type\":\"Sentinel\",\"id\":\"objects\\/optimized-out\"," |
| 559 "\"valueAsString\":\"<optimized out>\"}", | 559 "\"valueAsString\":\"<optimized out>\"}", |
| 560 handler.msg()); | 560 handler.msg()); |
| 561 | 561 |
| 562 // collected | 562 // collected |
| 563 service_msg = Eval(lib, "[0, port, ['objects', 'collected'], [], []]"); | 563 service_msg = Eval(lib, "[0, port, ['objects', 'collected'], [], []]"); |
| 564 Service::HandleIsolateMessage(isolate, service_msg); | 564 Service::HandleIsolateMessage(isolate, service_msg); |
| 565 handler.HandleNextMessage(); | 565 handler.HandleNextMessage(); |
| 566 handler.filterMsg("vmName"); | 566 handler.filterMsg("vmName"); |
| 567 EXPECT_STREQ( | 567 EXPECT_STREQ( |
| 568 "{\"type\":\"Null\",\"id\":\"objects\\/collected\"," | 568 "{\"type\":\"Sentinel\",\"id\":\"objects\\/collected\"," |
| 569 "\"valueAsString\":\"<collected>\"}", | 569 "\"valueAsString\":\"<collected>\"}", |
| 570 handler.msg()); | 570 handler.msg()); |
| 571 | 571 |
| 572 // expired | 572 // expired |
| 573 service_msg = Eval(lib, "[0, port, ['objects', 'expired'], [], []]"); | 573 service_msg = Eval(lib, "[0, port, ['objects', 'expired'], [], []]"); |
| 574 Service::HandleIsolateMessage(isolate, service_msg); | 574 Service::HandleIsolateMessage(isolate, service_msg); |
| 575 handler.HandleNextMessage(); | 575 handler.HandleNextMessage(); |
| 576 handler.filterMsg("vmName"); | 576 handler.filterMsg("vmName"); |
| 577 EXPECT_STREQ( | 577 EXPECT_STREQ( |
| 578 "{\"type\":\"Null\",\"id\":\"objects\\/expired\"," | 578 "{\"type\":\"Sentinel\",\"id\":\"objects\\/expired\"," |
| 579 "\"valueAsString\":\"<expired>\"}", | 579 "\"valueAsString\":\"<expired>\"}", |
| 580 handler.msg()); | 580 handler.msg()); |
| 581 | 581 |
| 582 // bool | 582 // bool |
| 583 service_msg = Eval(lib, "[0, port, ['objects', 'bool-true'], [], []]"); | 583 service_msg = Eval(lib, "[0, port, ['objects', 'bool-true'], [], []]"); |
| 584 Service::HandleIsolateMessage(isolate, service_msg); | 584 Service::HandleIsolateMessage(isolate, service_msg); |
| 585 handler.HandleNextMessage(); | 585 handler.HandleNextMessage(); |
| 586 handler.filterMsg("vmName"); | 586 handler.filterMsg("vmName"); |
| 587 EXPECT_STREQ( | 587 EXPECT_STREQ( |
| 588 "{\"type\":\"Bool\",\"id\":\"objects\\/bool-true\"," | 588 "{\"type\":\"Bool\",\"id\":\"objects\\/bool-true\"," |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 622 "\"class\":{\"type\":\"@Class\",\"name\":\"_OneByteString\",}," | 622 "\"class\":{\"type\":\"@Class\",\"name\":\"_OneByteString\",}," |
| 623 "\"valueAsString\":\"\\\"value\\\"\"}}]}", | 623 "\"valueAsString\":\"\\\"value\\\"\"}}]}", |
| 624 handler.msg()); | 624 handler.msg()); |
| 625 | 625 |
| 626 // object id ring / invalid => expired | 626 // object id ring / invalid => expired |
| 627 service_msg = Eval(lib, "[0, port, ['objects', '99999999'], [], []]"); | 627 service_msg = Eval(lib, "[0, port, ['objects', '99999999'], [], []]"); |
| 628 Service::HandleIsolateMessage(isolate, service_msg); | 628 Service::HandleIsolateMessage(isolate, service_msg); |
| 629 handler.HandleNextMessage(); | 629 handler.HandleNextMessage(); |
| 630 handler.filterMsg("vmName"); | 630 handler.filterMsg("vmName"); |
| 631 EXPECT_STREQ( | 631 EXPECT_STREQ( |
| 632 "{\"type\":\"Null\",\"id\":\"objects\\/expired\"," | 632 "{\"type\":\"Sentinel\",\"id\":\"objects\\/expired\"," |
| 633 "\"valueAsString\":\"<expired>\"}", | 633 "\"valueAsString\":\"<expired>\"}", |
| 634 handler.msg()); | 634 handler.msg()); |
| 635 | 635 |
| 636 // expired/eval => error | 636 // expired/eval => error |
| 637 service_msg = Eval(lib, "[0, port, ['objects', 'expired', 'eval'], [], []]"); | 637 service_msg = Eval(lib, "[0, port, ['objects', 'expired', 'eval'], [], []]"); |
| 638 Service::HandleIsolateMessage(isolate, service_msg); | 638 Service::HandleIsolateMessage(isolate, service_msg); |
| 639 handler.HandleNextMessage(); | 639 handler.HandleNextMessage(); |
| 640 handler.filterMsg("vmName"); | 640 handler.filterMsg("vmName"); |
| 641 EXPECT_STREQ( | 641 EXPECT_STREQ( |
| 642 "{\"type\":\"Error\",\"id\":\"\"," | 642 "{\"type\":\"Error\",\"id\":\"\"," |
| (...skipping 1382 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2025 service_msg = Eval(lib, "[0, port, ['profile'], ['tags'], ['hidden']]"); | 2025 service_msg = Eval(lib, "[0, port, ['profile'], ['tags'], ['hidden']]"); |
| 2026 Service::HandleIsolateMessage(isolate, service_msg); | 2026 Service::HandleIsolateMessage(isolate, service_msg); |
| 2027 handler.HandleNextMessage(); | 2027 handler.HandleNextMessage(); |
| 2028 // Expect error. | 2028 // Expect error. |
| 2029 EXPECT_SUBSTRING("\"type\":\"Error\"", handler.msg()); | 2029 EXPECT_SUBSTRING("\"type\":\"Error\"", handler.msg()); |
| 2030 } | 2030 } |
| 2031 | 2031 |
| 2032 #endif // !defined(TARGET_ARCH_ARM64) | 2032 #endif // !defined(TARGET_ARCH_ARM64) |
| 2033 | 2033 |
| 2034 } // namespace dart | 2034 } // namespace dart |
| OLD | NEW |