feat(jest-worker): add JestWorkerFarm
helper type
#12753
Merged
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.
Split from #12680
Summary
While working on #12680, I came up with
JestWorkerFarm
helper type. It is likejest.Mocked
, but for worker farms.It is necessary, because
Worker
class gets extended with exposed methods, but the type of the class does not know nothing about these. So for example,JestWorkerFarm<typeof import('./someWorker')>
returns the correct type fornew Worker(require.resolve('./someWorker'))
. Picking exposed method is supported by passing an object type (in this case, the helper makes sure that users do not override reserved keys).Useful internally. I would be happy to implement it for one of my projects too.
Test plan
Type tests added.