Skip to content
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

Is there a technical contribution doc (code organization, etc.)? #412

Closed
mpizenberg opened this issue Mar 31, 2020 · 1 comment
Closed

Comments

@mpizenberg
Copy link
Contributor

Hi, I was wondering if there is somewhere a high level explanation of how this test runner works, and/or pointers to articles presenting how this type of project (a test runner) is architectured? This is surprisingly harder to google than I thought.

I have had few issues with logging (#409) and thought I could give a try at fixing it. But after a day of reading the code I feel like the issue is kind of rooted in how tests are run and how results are gathered, and not easy to fix.

Also, I was wondering if I could give a try at a new test runner in Rust since it's well adapted for system stuff but I need a better understanding of node-test-runner for that. One thing that still isn't clear to me for example, is where is the code that sends the test results that the supervisor workers are listening? Is it all in the elm code and everything is sent through the send port I see in templates/after.js?

@harrysarson
Copy link
Collaborator

harrysarson commented Mar 31, 2020

I do not think we have any such doc unfortunately. Redirecting logs to std error might be a good starting point here, I think that should be possible (see the second point in my comment ion #365 (comment)).

To actually capture logs in tests would be a much larger change and would probably require a new function in elm-explorations/test. I think such a big change might be beyond us at the moment as this repo is in a semi-maintanance state.

I like https://github.com/avajs/ava's story about logging -- looking at how they architecture logging in their test runner might be a good place to start.


If you were to try a new test runner in Rust do let me know (@harrysarson on slack) I would be very keen to follow any progress on that front.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants