fix: pick correct frame when looking for test locations #221
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The test locations were not selected correctly because they ended up somewhere inside Mocha's
describe
andit
function definitions, since those functions are called last when constructing the stack frames to find the call sites. When I then tried to open the test file I always ended up at the same and incorrect place.Note that this has further implications - test failures were also not being attributed to the correct test location in my code before this patch as they again ended up inside Mocha's function definitions.
Here is a sample stack trace that is produced when the adapter is looking for the test location:
This is expected; you do call
describe
andit
functions from Mocha before you call your assertions. We therefore need to ignore call sites from thenode_modules
folder and go deeper.Here are some screenshots of before and after this change:
Before
After