codewars-rackunit
Wrapping Rackunit test result for Codewars.
This package contains a module codewars/rackunit, providing a function
run-tests. It wraps the rackunit's check, makes the test output fit in
(a subset of) Codewars output format.
Install
raco pkg install https://github.com/Codewars/codewars-rackunit.git
Usage
run-tests takes 2 arguments, test and an optional keyword #:mode
argument mode. In other words, it looks like (run-tests test #:mode [mode]).
The test argument is a test-suite? or test-case? value. It is the
test run.
The mode argument decides how the result be outputed. It can be one of
'quiet, 'simple, 'all or be a list of symbols. Each kind of value
corresponds to a mode of the output:
The quiet mode is the default value for mode. In this mode, output looks
like "Expected ***, but instead got ***". If the check has message,
the message is shown in the next line.
The other 3 mode display the result more RackUnit-like. They display
mode-specific check-infos line by line. The simple mode displays the
name, message, actual and expected infos. The all mode displays all the
check-infos.
When mode is a list of symbols, it is used as a filter for the names
of check-info stack. You can use this mode to do some customization.
Some Notes
run-tests here is just a wrapper for the result of RackUnit's tests.
Please read RackUnit document
to get more information about RackUnit and its api.
If you want to customize the result output, use define-check
and with-check-info
to add custom infos; and the custom mode of run-tests to display the
info you need.
A wrapper function for custom check will break the location check-info
of checks. If you need location information displayed, please use
define-check or a wrapper macro.

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.
