summaryrefslogtreecommitdiff
path: root/cli/js
diff options
context:
space:
mode:
Diffstat (limited to 'cli/js')
-rw-r--r--cli/js/40_testing.js20
1 files changed, 15 insertions, 5 deletions
diff --git a/cli/js/40_testing.js b/cli/js/40_testing.js
index 8b1557fbf..d119552e4 100644
--- a/cli/js/40_testing.js
+++ b/cli/js/40_testing.js
@@ -677,11 +677,21 @@ function test(
// Delete this prop in case the user passed it. It's used to detect steps.
delete testDesc.parent;
const jsError = core.destructureError(new Error());
- testDesc.location = {
- fileName: jsError.frames[1].fileName,
- lineNumber: jsError.frames[1].lineNumber,
- columnNumber: jsError.frames[1].columnNumber,
- };
+ let location;
+
+ for (let i = 0; i < jsError.frames.length; i++) {
+ const filename = jsError.frames[i].fileName;
+ if (filename.startsWith("ext:") || filename.startsWith("node:")) {
+ continue;
+ }
+ location = {
+ fileName: jsError.frames[i].fileName,
+ lineNumber: jsError.frames[i].lineNumber,
+ columnNumber: jsError.frames[i].columnNumber,
+ };
+ break;
+ }
+ testDesc.location = location;
testDesc.fn = wrapTest(testDesc);
const { id, origin } = ops.op_register_test(testDesc);