mirror of https://github.com/tc39/test262.git
58 lines
2.0 KiB
JavaScript
58 lines
2.0 KiB
JavaScript
|
// Copyright 2018 the V8 project authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be
|
||
|
// found in the LICENSE file.
|
||
|
|
||
|
// Flags: --allow-natives-syntax --no-always-opt
|
||
|
// Files: test/mjsunit/code-coverage-utils.js
|
||
|
|
||
|
%DebugToggleBlockCoverage(true);
|
||
|
|
||
|
TestCoverage(
|
||
|
"Repro for the bug",
|
||
|
`
|
||
|
function lib (n) { // 0000
|
||
|
if (n >= 0) { // 0050
|
||
|
if (n < 0) { // 0100
|
||
|
return; // 0150
|
||
|
} // 0200
|
||
|
} else if (foo()) { // 0250
|
||
|
} // 0300
|
||
|
} // 0350
|
||
|
function foo () { // 0400
|
||
|
console.log('foo') // 0450
|
||
|
return false // 0500
|
||
|
} // 0550
|
||
|
lib(1) // 0600
|
||
|
`,
|
||
|
[{"start":0,"end":649,"count":1},
|
||
|
{"start":0,"end":351,"count":1},
|
||
|
{"start":115,"end":205,"count":0},
|
||
|
{"start":253,"end":303,"count":0},
|
||
|
{"start":400,"end":551,"count":0}]
|
||
|
);
|
||
|
|
||
|
TestCoverage(
|
||
|
"Variant with omitted brackets",
|
||
|
`
|
||
|
function lib (n) { // 0000
|
||
|
if (n >= 0) { // 0050
|
||
|
if (n < 0) // 0100
|
||
|
return; // 0150
|
||
|
} // 0200
|
||
|
else if (foo()); // 0250
|
||
|
} // 0300
|
||
|
function foo () { // 0350
|
||
|
console.log('foo') // 0400
|
||
|
return false // 0450
|
||
|
} // 0500
|
||
|
lib(1) // 0550
|
||
|
`,
|
||
|
[{"start":0,"end":599,"count":1},
|
||
|
{"start":0,"end":301,"count":1},
|
||
|
{"start":156,"end":163,"count":0},
|
||
|
{"start":203,"end":268,"count":0},
|
||
|
{"start":350,"end":501,"count":0}]
|
||
|
);
|
||
|
|
||
|
%DebugToggleBlockCoverage(false);
|