[ VM ] Updated SourceReport tests with correct token positions
Change-Id: I6aa49e715043a1ba463425e53018c5078a272129 Reviewed-on: https://dart-review.googlesource.com/c/94962 Reviewed-by: Siva Annamalai <asiva@google.com> Commit-Queue: Ben Konyi <bkonyi@google.com>
This commit is contained in:
committed by
commit-bot@chromium.org
parent
19dbd70363
commit
e8d6e2f704
@@ -181,20 +181,6 @@ cc/Debugger_Rewind_Optimized: SkipSlow
|
||||
cc/Debugger_SetBreakpointInPartOfLibrary: Crash
|
||||
cc/IsolateReload_NotTypedefToTypedef: Fail
|
||||
cc/IsolateReload_TypedefToNotTypedef: Fail
|
||||
cc/SourceReport_CallSites_PolymorphicCall: Fail
|
||||
cc/SourceReport_CallSites_SimpleCall: Fail
|
||||
cc/SourceReport_Coverage_AllFunctions: Fail
|
||||
cc/SourceReport_Coverage_AllFunctions_ForceCompile: Fail
|
||||
cc/SourceReport_Coverage_ForceCompile: Fail
|
||||
cc/SourceReport_Coverage_NestedFunctions: Fail
|
||||
cc/SourceReport_Coverage_NoCalls: Fail
|
||||
cc/SourceReport_Coverage_RestrictedRange: Fail
|
||||
cc/SourceReport_Coverage_SimpleCall: Fail
|
||||
cc/SourceReport_Coverage_UnusedClass_ForceCompile: Fail
|
||||
cc/SourceReport_Coverage_UnusedClass_ForceCompileError: Crash
|
||||
cc/SourceReport_Coverage_UnusedClass_NoForceCompile: Fail
|
||||
cc/SourceReport_MultipleReports: Fail
|
||||
cc/SourceReport_PossibleBreakpoints_Simple: Fail
|
||||
dart/data_uri_import_test/utf16: MissingRuntimeError
|
||||
dart/spawn_shutdown_test: SkipSlow
|
||||
|
||||
|
||||
@@ -10,11 +10,15 @@ namespace dart {
|
||||
|
||||
#ifndef PRODUCT
|
||||
|
||||
static RawObject* ExecuteScript(const char* script) {
|
||||
static RawObject* ExecuteScript(const char* script, bool allow_errors = false) {
|
||||
Dart_Handle lib;
|
||||
{
|
||||
TransitionVMToNative transition(Thread::Current());
|
||||
lib = TestCase::LoadTestScript(script, NULL);
|
||||
if (allow_errors) {
|
||||
lib = TestCase::LoadTestScriptWithErrors(script, NULL);
|
||||
} else {
|
||||
lib = TestCase::LoadTestScript(script, NULL);
|
||||
}
|
||||
EXPECT_VALID(lib);
|
||||
Dart_Handle result = Dart_Invoke(lib, NewString("main"), 0, NULL);
|
||||
EXPECT_VALID(result);
|
||||
@@ -33,7 +37,6 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_NoCalls) {
|
||||
ASSERT(!lib.IsNull());
|
||||
const Script& script =
|
||||
Script::Handle(lib.LookupScript(String::Handle(String::New("test-lib"))));
|
||||
|
||||
SourceReport report(SourceReport::kCoverage);
|
||||
JSONStream js;
|
||||
report.PrintJSON(&js, script);
|
||||
@@ -42,12 +45,12 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_NoCalls) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":"
|
||||
|
||||
// One compiled range, one hit at function declaration.
|
||||
"[{\"scriptIndex\":0,\"startPos\":0,\"endPos\":5,\"compiled\":true,"
|
||||
"[{\"scriptIndex\":0,\"startPos\":0,\"endPos\":9,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0],\"misses\":[]}}],"
|
||||
|
||||
// One script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -79,19 +82,19 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_SimpleCall) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// One range compiled with one hit at function declaration (helper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0],\"misses\":[]}},"
|
||||
|
||||
// One range not compiled (helper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":6,\"endPos\":10,\"compiled\":false},"
|
||||
"{\"scriptIndex\":0,\"startPos\":13,\"endPos\":24,\"compiled\":false},"
|
||||
|
||||
// One range with two hits and a miss (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":12,\"endPos\":39,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[12,23],\"misses\":[32]}}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":26,\"endPos\":94,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[26,53],\"misses\":[79]}}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -119,24 +122,25 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_ForceCompile) {
|
||||
report.PrintJSON(&js, script);
|
||||
ElideJSONSubstring("classes", js.ToCString(), buffer);
|
||||
ElideJSONSubstring("libraries", buffer, buffer);
|
||||
|
||||
EXPECT_STREQ(
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// One range compiled with one hit at function declaration (helper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0],\"misses\":[]}},"
|
||||
|
||||
// This range is compiled even though it wasn't called (helper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":6,\"endPos\":10,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[],\"misses\":[6]}},"
|
||||
"{\"scriptIndex\":0,\"startPos\":13,\"endPos\":24,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[],\"misses\":[13]}},"
|
||||
|
||||
// One range with two hits and a miss (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":12,\"endPos\":39,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[12,23],\"misses\":[32]}}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":26,\"endPos\":94,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[26,53],\"misses\":[79]}}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -166,19 +170,19 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_UnusedClass_NoForceCompile) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// UnusedClass is not compiled.
|
||||
"{\"scriptIndex\":0,\"startPos\":6,\"endPos\":20,\"compiled\":false},"
|
||||
"{\"scriptIndex\":0,\"startPos\":13,\"endPos\":55,\"compiled\":false},"
|
||||
|
||||
// helper0 is compiled.
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0],\"misses\":[]}},"
|
||||
|
||||
// One range with two hits (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":22,\"endPos\":32,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[22,27],\"misses\":[]}}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":57,\"endPos\":79,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[57,68],\"misses\":[]}}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -208,20 +212,20 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_UnusedClass_ForceCompile) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// UnusedClass.helper1 is compiled.
|
||||
"{\"scriptIndex\":0,\"startPos\":10,\"endPos\":18,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[],\"misses\":[10,14]}},"
|
||||
"{\"scriptIndex\":0,\"startPos\":30,\"endPos\":53,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[],\"misses\":[30,42]}},"
|
||||
|
||||
// helper0 is compiled.
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0],\"misses\":[]}},"
|
||||
|
||||
// One range with two hits (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":22,\"endPos\":32,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[22,27],\"misses\":[]}}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":57,\"endPos\":79,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[57,68],\"misses\":[]}}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -237,7 +241,7 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_UnusedClass_ForceCompileError) {
|
||||
"}";
|
||||
|
||||
Library& lib = Library::Handle();
|
||||
lib ^= ExecuteScript(kScript);
|
||||
lib ^= ExecuteScript(kScript, true);
|
||||
ASSERT(!lib.IsNull());
|
||||
const Script& script =
|
||||
Script::Handle(lib.LookupScript(String::Handle(String::New("test-lib"))));
|
||||
@@ -251,23 +255,25 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_UnusedClass_ForceCompileError) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// UnusedClass has a syntax error.
|
||||
"{\"scriptIndex\":0,\"startPos\":10,\"endPos\":18,\"compiled\":false,"
|
||||
"{\"scriptIndex\":0,\"startPos\":30,\"endPos\":53,\"compiled\":false,"
|
||||
"\"error\":{\"type\":\"@Error\",\"_vmType\":\"LanguageError\","
|
||||
"\"kind\":\"LanguageError\",\"id\":\"objects\\/0\","
|
||||
"\"message\":\"'test-lib': error: line 3 pos 26: unexpected token '}'\\n"
|
||||
" helper1() { helper0()+ }\\n ^\\n\"}},"
|
||||
"\"message\":\"'file:\\/\\/\\/test-lib': error: "
|
||||
"file:\\/\\/\\/test-lib:3:26: "
|
||||
"Error: This couldn't be parsed.\\n"
|
||||
" helper1() { helper0()+ }\\n ^\"}},"
|
||||
|
||||
// helper0 is compiled.
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0],\"misses\":[]}},"
|
||||
|
||||
// One range with two hits (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":22,\"endPos\":32,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[22,27],\"misses\":[]}}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":57,\"endPos\":79,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[57,68],\"misses\":[]}}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -299,30 +305,31 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_NestedFunctions) {
|
||||
report.PrintJSON(&js, script);
|
||||
ElideJSONSubstring("classes", js.ToCString(), buffer);
|
||||
ElideJSONSubstring("libraries", buffer, buffer);
|
||||
|
||||
EXPECT_STREQ(
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// One range compiled with one hit (helper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":22,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0,18],\"misses\":[]}},"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":73,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0,69],\"misses\":[]}},"
|
||||
|
||||
// One range not compiled (helper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":24,\"endPos\":28,\"compiled\":false},"
|
||||
"{\"scriptIndex\":0,\"startPos\":75,\"endPos\":86,\"compiled\":false},"
|
||||
|
||||
// One range with two hits and a miss (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":30,\"endPos\":57,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[30,41],\"misses\":[50]}},"
|
||||
"{\"scriptIndex\":0,\"startPos\":88,\"endPos\":156,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[88,115],\"misses\":[141]}},"
|
||||
|
||||
// Nested range compiled (nestedHelper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":5,\"endPos\":9,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[5],\"misses\":[]}},"
|
||||
"{\"scriptIndex\":0,\"startPos\":14,\"endPos\":31,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[14],\"misses\":[]}},"
|
||||
|
||||
// Nested range not compiled (nestedHelper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":11,\"endPos\":15,\"compiled\":false}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":35,\"endPos\":52,\"compiled\":false}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -357,23 +364,24 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_RestrictedRange) {
|
||||
report.PrintJSON(&js, script, helper.token_pos(), helper.end_token_pos());
|
||||
ElideJSONSubstring("classes", js.ToCString(), buffer);
|
||||
ElideJSONSubstring("libraries", buffer, buffer);
|
||||
|
||||
EXPECT_STREQ(
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// One range compiled with one hit (helper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":22,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0,18],\"misses\":[]}},"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":73,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[0,69],\"misses\":[]}},"
|
||||
|
||||
// Nested range compiled (nestedHelper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":5,\"endPos\":9,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[5],\"misses\":[]}},"
|
||||
"{\"scriptIndex\":0,\"startPos\":14,\"endPos\":31,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[14],\"misses\":[]}},"
|
||||
|
||||
// Nested range not compiled (nestedHelper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":11,\"endPos\":15,\"compiled\":false}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":35,\"endPos\":52,\"compiled\":false}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -406,8 +414,8 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_AllFunctions) {
|
||||
|
||||
// Make sure that the main function was found.
|
||||
EXPECT_SUBSTRING(
|
||||
"\"startPos\":12,\"endPos\":39,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[12,23],\"misses\":[32]}",
|
||||
"\"startPos\":26,\"endPos\":94,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[26,53],\"misses\":[79]}",
|
||||
result);
|
||||
|
||||
// More than one script is referenced in the report.
|
||||
@@ -445,8 +453,8 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_Coverage_AllFunctions_ForceCompile) {
|
||||
|
||||
// Make sure that the main function was found.
|
||||
EXPECT_SUBSTRING(
|
||||
"\"startPos\":12,\"endPos\":39,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[12,23],\"misses\":[32]}",
|
||||
"\"startPos\":26,\"endPos\":94,\"compiled\":true,"
|
||||
"\"coverage\":{\"hits\":[26,53],\"misses\":[79]}",
|
||||
result);
|
||||
|
||||
// More than one script is referenced in the report.
|
||||
@@ -479,25 +487,25 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_CallSites_SimpleCall) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// One range compiled with no callsites (helper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"callSites\":[]},"
|
||||
|
||||
// One range not compiled (helper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":6,\"endPos\":10,\"compiled\":false},"
|
||||
"{\"scriptIndex\":0,\"startPos\":13,\"endPos\":24,\"compiled\":false},"
|
||||
|
||||
// One range compiled with one callsite (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":12,\"endPos\":22,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":26,\"endPos\":48,\"compiled\":true,"
|
||||
"\"callSites\":["
|
||||
"{\"name\":\"helper0\",\"tokenPos\":17,\"cacheEntries\":["
|
||||
"{\"name\":\"helper0\",\"tokenPos\":37,\"cacheEntries\":["
|
||||
"{\"target\":{\"type\":\"@Function\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"name\":\"helper0\",\"owner\":{\"type\":\"@Library\",\"fixedId\":true,"
|
||||
"\"id\":\"\",\"name\":\"\",\"uri\":\"test-lib\"},"
|
||||
"\"id\":\"\",\"name\":\"\",\"uri\":\"file:\\/\\/\\/test-lib\"},"
|
||||
"\"_kind\":\"RegularFunction\",\"static\":true,\"const\":false,"
|
||||
"\"_intrinsic\":false,\"_native\":false},\"count\":1}]}]}],"
|
||||
|
||||
// One script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -538,10 +546,10 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_CallSites_PolymorphicCall) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// One range...
|
||||
"{\"scriptIndex\":0,\"startPos\":24,\"endPos\":37,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":60,\"endPos\":88,\"compiled\":true,"
|
||||
|
||||
// With one call site...
|
||||
"\"callSites\":[{\"name\":\"func\",\"tokenPos\":32,\"cacheEntries\":["
|
||||
"\"callSites\":[{\"name\":\"dyn:func\",\"tokenPos\":80,\"cacheEntries\":["
|
||||
|
||||
// First receiver: "Common", called twice.
|
||||
"{\"receiver\":{\"type\":\"@Class\",\"fixedId\":true,\"id\":\"\","
|
||||
@@ -571,7 +579,7 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_CallSites_PolymorphicCall) {
|
||||
|
||||
// One script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -599,27 +607,27 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_MultipleReports) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// One range compiled with no callsites (helper0).
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"callSites\":[],"
|
||||
"\"coverage\":{\"hits\":[0],\"misses\":[]}},"
|
||||
|
||||
// One range not compiled (helper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":6,\"endPos\":10,\"compiled\":false},"
|
||||
"{\"scriptIndex\":0,\"startPos\":13,\"endPos\":24,\"compiled\":false},"
|
||||
|
||||
// One range compiled with one callsite (main).
|
||||
"{\"scriptIndex\":0,\"startPos\":12,\"endPos\":22,\"compiled\":true,"
|
||||
"{\"scriptIndex\":0,\"startPos\":26,\"endPos\":48,\"compiled\":true,"
|
||||
"\"callSites\":["
|
||||
"{\"name\":\"helper0\",\"tokenPos\":17,\"cacheEntries\":["
|
||||
"{\"name\":\"helper0\",\"tokenPos\":37,\"cacheEntries\":["
|
||||
"{\"target\":{\"type\":\"@Function\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"name\":\"helper0\",\"owner\":{\"type\":\"@Library\",\"fixedId\":true,"
|
||||
"\"id\":\"\",\"name\":\"\",\"uri\":\"test-lib\"},"
|
||||
"\"id\":\"\",\"name\":\"\",\"uri\":\"file:\\/\\/\\/test-lib\"},"
|
||||
"\"_kind\":\"RegularFunction\",\"static\":true,\"const\":false,"
|
||||
"\"_intrinsic\":false,\"_native\":false},\"count\":1}]}],"
|
||||
"\"coverage\":{\"hits\":[12,17],\"misses\":[]}}],"
|
||||
"\"coverage\":{\"hits\":[26,37],\"misses\":[]}}],"
|
||||
|
||||
// One script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
@@ -651,19 +659,19 @@ ISOLATE_UNIT_TEST_CASE(SourceReport_PossibleBreakpoints_Simple) {
|
||||
"{\"type\":\"SourceReport\",\"ranges\":["
|
||||
|
||||
// helper0.
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":4,\"compiled\":true,"
|
||||
"\"possibleBreakpoints\":[1,4]},"
|
||||
"{\"scriptIndex\":0,\"startPos\":0,\"endPos\":11,\"compiled\":true,"
|
||||
"\"possibleBreakpoints\":[7,11]},"
|
||||
|
||||
// One range not compiled (helper1).
|
||||
"{\"scriptIndex\":0,\"startPos\":6,\"endPos\":10,\"compiled\":false},"
|
||||
"{\"scriptIndex\":0,\"startPos\":13,\"endPos\":24,\"compiled\":false},"
|
||||
|
||||
// main.
|
||||
"{\"scriptIndex\":0,\"startPos\":12,\"endPos\":39,\"compiled\":true,"
|
||||
"\"possibleBreakpoints\":[13,23,32,39]}],"
|
||||
"{\"scriptIndex\":0,\"startPos\":26,\"endPos\":94,\"compiled\":true,"
|
||||
"\"possibleBreakpoints\":[30,53,79,94]}],"
|
||||
|
||||
// Only one script in the script table.
|
||||
"\"scripts\":[{\"type\":\"@Script\",\"fixedId\":true,\"id\":\"\","
|
||||
"\"uri\":\"test-lib\",\"_kind\":\"script\"}]}",
|
||||
"\"uri\":\"file:\\/\\/\\/test-lib\",\"_kind\":\"kernel\"}]}",
|
||||
buffer);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user