-
Notifications
You must be signed in to change notification settings - Fork 4
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
Stabilize json output #42
Comments
@pietroalbini privately raised a concern that rendered output should be included for pretty / terse. This is to make it easier when callers need to capture json messages while still rendering output, which they did for bootstrap On the flip side
|
Would this mean there'd be no renderer in libtest anymore? That'd force anyone not using cargo to reimplement it for themselves. In addition to other build systems, compiletest uses libtest directly without cargo.
A possible solution would be to have a new
I imagine we'll eventually standardize to a small-ish number of test harnesses, while I can easily see lots of project hacking together scripts using the JSON events in CI. |
Most likely, the renderer would be frozen as-is and custom test harnesses could choose to render as they wish for default and
Which renderer? Both at once? If not, how does the user select? And is this "output" supposed to literally be the equivalent of all of the |
On the upstream issue, I saw https://github.com/testing-cabal/subunit / https://github.com/mtreinish/subunit-rust mentioned and will need to take a look, either for inspiration or if we can use it outright. |
pytest's test / testsuite property might be reasonable to support. I've already been thinking of the issue between benchmark metrics and general test metrics. The general test metrics could just be properties. |
And someone created a json format for pytest: https://github.com/numirias/pytest-json-report An ndjson one which has the potential to be merged is https://github.com/pytest-dev/pytest-reportlog |
Pulling in some related projects for input on benches |
I would include only one renderer at the time (to avoid hardcoding "terse" vs "verbose" in the output), not sure how to encode that. Maybe
Yeah, I'd also include an event for flushing. That way third party runners shouldn't have many problems supporting this. |
We should probably dig into these ideas for exploring the ability to support these in the future if we need it |
Similarly, we should look to TAP for ideas. |
This is to track our effort for stabilizing our json putput
Open questions
"status": null
, should it be"status": "success"
?The text was updated successfully, but these errors were encountered: