-
Notifications
You must be signed in to change notification settings - Fork 29.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[node:test] Support for file path patterns in run()
#48609
Comments
What you are really asking for is run({ files: fs.glob("**/*.test.js") }); I am +1 on exposing glob, but that requires some more work, with making mini-match more primordials friendly |
an alternative is to use some glob npm package and pass the paths to the files property |
That would mostly solve my problem indeed. I was positively surprised seeing that |
yep, I mentioned that in the initial description but that slightly defeats one of the goals of built-in Node.js test runner - to not install external dependencies to run your tests |
This would also help the typescript case where you pass a |
There has been no activity on this feature request for 5 months and it is unlikely to be implemented. It will be closed 6 months after the last non-automated comment. For more information on how the project manages feature requests, please consult the feature request management document. |
What is the problem this feature will solve?
It's quite difficult to run test files matching a "file name pattern" when using
run()
function.It's easy when using CLI, for example:
It's difficult because it only allows to pass file paths in files option which means I need to use e.g. glob package to find files when I want to replicate the same behaviour when using CLI.
I see it's possible to still provide test file name pattern as command option when when using
run()
but I would like to define file name patterns in
runTests.mjs
file, based on different conditions.My use case is to differentiate between unit and integration tests in
runTests.mjs
What is the feature you are proposing to solve the problem?
Add new option to
run()
functionfilePathPatterns
orfilePatterns
ortestFilePathPatterns
- to specify which files test runner should run by glob pattern, like in CLIArray<string>
filePathPatterns: ['src/**/*.integration.test.js']
Additional option to ignore
It would be great to be able to also ignore some tests by file path pattern
so another option like
filePathIgnorePatterns
- to specify which files should be ignored by test runner to allow running only selected set of tests (e.g. only integration tests)I see that internal
Glob
implementation has an exclude option so that's what I am talking aboutWhat alternatives have you considered?
Using only CLI for running tests, avoid using
run()
The text was updated successfully, but these errors were encountered: