У меня была та же проблема, что и у вас.Причиной этого было то, что файл набора тестов не был скомпилирован в исполняемый файл.Оказалось, что независимо от того, как я его настроил, Cabal не создавал исполняемые файлы для модулей, расположенных в некоторых пространствах имен (например, Pkg.Main
), и жаловался на невозможность найти модуль Main
на этапе сборки.
Решение, которое я нашел, состояло в том, чтобы переместить и модуль Main
, и модуль TestSuite
в основную папку src/
и удалить объявления заголовков module
в этих файлах.
Вот как выглядит мой рабочий cabal
конфиг:
name: Pwn
version: 0.1
cabal-version: >= 1.2
build-type: Simple
executable main
hs-source-dirs: src
main-is: main.hs
build-depends: base >= 4 && < 5,
random,
containers
test-suite test-suite
hs-source-dirs: src
main-is: test-suite.hs
build-depends:
base >= 4 && < 5,
test-framework >= 0.4.1,
test-framework-quickcheck,
test-framework-hunit
type: exitcode-stdio-1.0