Cabal Test Suite с подробным примером типа - PullRequest
14 голосов
/ 25 ноября 2011

Я ищу пакет cabal с использованием подробного интерфейса Test-Suite, чтобы узнать, как структурировать код.

Ответы [ 3 ]

10 голосов
/ 28 ноября 2011

Документация cabal содержит примеры тестовых интерфейсов detailed-1.0 и exitcode-stdio-1.0.Однако обратите внимание, что подробный интерфейс тестирования пока не поддерживается.В настоящее время поддерживается только более простой интерфейс exitcode-stdio-1.0.

Начиная с ветка недавней почты в списке cabal-devel (от 5 сентября 2011 г.):

* 1013Ах, редкий случай преждевременной документации.То есть документация для функции, которая должна быть выпущена, но еще не выпущена.[...] Ни одна выпущенная версия не поддерживает подробный интерфейс.Совсем недавно мы думали, что остановились на окончательном интерфейсе и надеемся, что вскоре он будет реализован в версии darcs.
5 голосов
/ 25 ноября 2015

Поскольку я несколько раз спотыкался над этим вопросом: с Cabal 1.20 (1.18?) Поддерживается подробное-0,9 , поддерживается , см., Например, https://github.com/michaxm/test-detailed-example. Но посколькуНекоторое время без этого инфраструктура вокруг exitcode-stdio-1.0 (+ одна из поддерживающих библиотек, например, hspec, hunit, ...) все еще может быть лучше.

См. Как использовать подробные-0,9 в кабальном тестировании .

Пример минимального содержимого .cabal для подробного теста 0,9 (с использованием имен стекового проекта по умолчанию):

name:                test-detailed-example
version:             0.1.0.0
build-type:          Simple
cabal-version:       >=1.20

library
  hs-source-dirs:      src
  exposed-modules:     Lib
  build-depends:       base >= 4.7 && < 5
  default-language:    Haskell2010

test-suite test-detailed-example-test
  type:                detailed-0.9
  hs-source-dirs:      test
  test-module:         Spec
  build-depends:       base >= 4.7,
                       Cabal >= 1.20
  default-language:    Haskell2010
0 голосов
/ 28 ноября 2011

Файл клики Хэддока включает строфу тестового набора; возможно, вы могли бы начать там.

...