ExUnit v1.7.4 ExUnit.Formatter View Source
Helper functions for formatting and the formatting protocols.
Formatters are GenServers specified during ExUnit configuration
that receive a series of events as casts.
The following events are possible:
{:suite_started, opts}- the suite has started with the specified options to the runner.{:suite_finished, run_us, load_us}- the suite has finished.run_usandload_usare the run and load times in microseconds respectively.{:module_started, test_module}- a test module has started. SeeExUnit.TestModulefor details.{:module_finished, test_module}- a test module has finished. SeeExUnit.TestModulefor details.{:test_started, test}- a test has started. SeeExUnit.Testfor details.{:test_finished, test}- a test has finished. SeeExUnit.Testfor details.
The formatter will also receive the following events but they are deprecated and should be ignored:
{:case_started, test_module}- a test module has started. SeeExUnit.TestCasefor details.{:case_finished, test_module}- a test module has finished. SeeExUnit.TestCasefor details.
Link to this section Summary
Functions
Formats filters used to constrain cases to be run
Receives a test module and formats its failure
Receives a test and formats its failure
Formats time taken running the test suite
Link to this section Types
Link to this section Functions
Formats filters used to constrain cases to be run.
Examples
iex> format_filters([run: true, slow: false], :include)
"Including tags: [run: true, slow: false]"
Receives a test module and formats its failure.
Receives a test and formats its failure.
Formats time taken running the test suite.
It receives the time spent running the tests and optionally the time spent loading the test suite.
Examples
iex> format_time(10000, nil)
"Finished in 0.01 seconds"
iex> format_time(10000, 20000)
"Finished in 0.03 seconds (0.02s on load, 0.01s on tests)"
iex> format_time(10000, 200_000)
"Finished in 0.2 seconds (0.2s on load, 0.01s on tests)"