Testing

The preferred Lisp package for writing simple unit tests is lisp-unit.

Running existing tests

Just do

,r-l-s ROS_SYSTEM_TO_TEST asdf-system-to-test-tests

The asdf system for tests usually has either the -tests suffix, or -test suffix.

And then:

,!p asdf-system-to-test-tests
(run-tests)

or

...
(run-tests my-define-tests-function-name)

That's all.

Writing unit tests for your functions

Here is a tutorial on writing tests. It does assume that you have gone through all the beginner tutorials and have the corresponding code for the tutorials locally available. So, if you haven't done the beginner tutorials yet or very long ago, now is a good time to quickly refresh.

FiveAM If lisp-unit isn't expressive enough for you, consider using FiveAM. To run tests written with FiveAM (1) load the tests asdf package, (2) change to the corresponding Lisp package in the REPL and (3) execute (run!). If (run!) doesn't do anything automatically, try specifying the test suite name: (run! 'MY_TEST_SUITE_NAME). You can find the name by rgrep-ing (def-suite in your ASDF package.