LoginSignup
5
0

More than 5 years have passed since last update.

ElmでDoctest

Last updated at Posted at 2017-12-30

ElmでDoctestするには以下のどちらかのライブラリを利用します。

今回はelm-doctestを利用してElmでDoctestしてみます。

インストール

下記のコマンドでプロジェクトにインストールします。

npm install elm-doctest

あるいは、

yarn add elm-doctest

テストコマンドを作る

さて、elm-doctestはプロジェクトローカルにインストールした場合、node_modules/.bin/elm-doctestで動作させることができません。1
プロジェクトローカルで動かせるようにするプルリク出したらマージされてました。

何れにせよ、node_modules/.bin/elm-doctestなどというコマンドは自分で打つには長すぎますので、npmのscript機能を利用してdoctestを実行出来るようにします。2

package.json
  {
+   "scripts": { "test": "node ./node_modules/elm-doctest/src/main.js ./src/**/*.elm" }
  }

Doctestを書く

elm-doctestではテストコードをdoccomment内に>>> [code]と記述し、次の行にその結果を書くことで動作させることが出来ます。

テストコードになる部分はドキュメンテーション時にコードブロックになるようにインデントを下げて書いておいたほうが良いです。

module Sample exposing (..)

{-| テストサンプル

利用例:

    >>> test "OK"
    "OK"
-}
test : String -> String
test text =
    text

実行する

ここまで出来たら下記のコマンドで実行出来ます。

npm test

  1. 少なくともver0.3.6では動作しません。 

  2. このサンプルコードはElmのソースコードが./src以下に置かれていることを前提としています。 

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0