Skip to content

feat: run Errata tests interactively in a widget - #959

Open
david-christiansen wants to merge 2 commits into
test-framework-2from
test-framework-3
Open

feat: run Errata tests interactively in a widget#959
david-christiansen wants to merge 2 commits into
test-framework-2from
test-framework-3

Conversation

@david-christiansen

Copy link
Copy Markdown
Collaborator

Tests can additionally be run interactively using a widget. When the text cursor is on a test's source span, the InfoView offers a "run" button that runs the test in a separate process, streaming its output as it is produced and killing the process if the run is cancelled.

This rearchitects our test suite into a proper testing framework. Before, our
tests were all essentially ad hoc. Each kind of test would be an IO action
that might throw, and there were some rough conventions, but output reporting
was inconsistent and sometimes hard to understand. Tests were noisy as well,
which made it hard to find reasons for failure at a glance.

Now the suite runs on Errata: `lake test` discovers every `@[test]` in the
package, reports results uniformly, and CI displays the JUnit XML report.
Tests can additionally be run interactively using a widget. When the text
cursor is on a test's source span, the InfoView offers a "run" button that
runs the test in a separate process, streaming its output as it is produced
and killing the process if the run is cancelled.
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

Successfully merging this pull request may close these issues.

1 participant