Comments (10)
👍
from ava.
Currently, ava does not have a single config store, so we have to come up with some way to share configuration between scripts. Right now, I can see 2 ways to implement this, without major code changes:
ava --debug
sets environment variable, so that other scripts (files) see it:process.env.AVA_DEBUG = true
. Also, it will be possible to enable debug mode byAVA_DEBUG=true ava
.- Have a
config.js
withmodule.exports = {}
and set config values there (all scripts thatrequire('./config')
will get the same object).
What do you think?
from ava.
Config would also be handy for #27
from ava.
Do you mean for child processes? Or just for the AVA scripts in general?
from ava.
@Qix- Sorry, did not understand your question
from ava.
I re-read your comment; I think see what you mean now.
I'd have to test, but I'd suspect that ad-hoc environment variables added to process.env
would be passed down to child processes too, which means that's a plausible way of storing configuration so child AVA processes will be aware of configuration. Unless that's not how @sindresorhus plans on implementing child processes.
from ava.
Yes, child processes will get modified process.env
object (node.js docs say so).
from ava.
I don't understand how this is related to a --debug
flag? Right now it doesn't use any child-processes, but just require
's the test files.
As for sharing config with sub-processes, that's better discussed in #1. But tl;dr, child_process.fork
and message passing.
from ava.
@sindresorhus I was talking about the ways to indicate, that user specified --debug
flag and wants tests to run serially. For example, as for now, how would lib/test.js
know, that cli.js
has debug = true
?
from ava.
It could just read argv: process.argv.indexOf('--debug') !== -1
. But more likely the CLI will pass it as an option to the lib/test.js
interface.
from ava.
Related Issues (20)
- AVA hangs after all tests pass HOT 2
- Support a proper junit reporter
- Monorepo with babel aliases support HOT 1
- The watch mode does not work in v6 HOT 4
- Ability to run a mixed test code base using node:test HOT 2
- Azure DevOps output handler
- Typescript with VS Code debug issue
- config to control handling for tests that 'Failed to exit' - v6+ issue HOT 3
- Ava fails to run in watch mode via CLI HOT 2
- Documentation Request: Using a Node Custom Loader
- Add support for `--env-file=` flag for node 20 in `nodeArguments`
- Spurious "previous failures in test files that were not rerun" in watch mode HOT 2
- registerCompletionHandler can't be used in CommonJS project HOT 1
- Allow regexes in `t.like` HOT 2
- failing async test ends in timeout instead of go to catch clause
- `t.throws` doesn't recognize falsy thrown values
- `t.inRange`
- Ava won't work with yarn workspaces package named `business-logic` HOT 1
- Tap reporter outputs internal stack traces HOT 2
- Add support for Node 22 HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ava.