Для тестирования вы обычно разделяете приложение в файле проекта cabal между библиотекой, исполняемым файлом и исполняемым файлом test-suite , который проверяет функции библиотеки, поэтому функции утверждения теста сохраняются отдельно.
Для визуализации внешней функции вы разделяете библиотечные модули между секцией «открытых модулей» и секцией «другие модули».