DocTest
From HaskellWiki
m |
m (reordered sections, added "Installation") |
||
| Line 2: | Line 2: | ||
DocTest is a small program, that checks examples in | DocTest is a small program, that checks examples in | ||
Haskell source code comments. It is modeled after | Haskell source code comments. It is modeled after | ||
| - | [http://docs.python.org/library/doctest.html doctest for Python]. | + | [http://docs.python.org/library/doctest.html doctest for Python]. |
| - | == | + | ==Installation== |
| + | DocTest is available from | ||
| + | [http://hackage.haskell.org/cgi-bin/hackage-scripts/package/DocTest Hackage]. | ||
| + | Install it by typing (on your Unix shell): | ||
| + | <pre> | ||
| + | $ cabal install doctest | ||
| + | </pre> | ||
| + | |||
| + | ==Usage== | ||
Bellow is a small Haskell module. The module contains source code comments. | Bellow is a small Haskell module. The module contains source code comments. | ||
Those comments are examples from an interactive Haskell session and demonstrate how the module is used. | Those comments are examples from an interactive Haskell session and demonstrate how the module is used. | ||
| Line 37: | Line 45: | ||
evaluating that expression. | evaluating that expression. | ||
| - | == | + | ==Hacking== |
| - | DocTest development is in an early stage. | + | DocTest development is in an early stage. |
| + | My public git repository is at: | ||
| - | |||
| - | |||
| - | |||
| - | |||
http://code.haskell.org/~sih/code/DocTest.git/ | http://code.haskell.org/~sih/code/DocTest.git/ | ||
| + | |||
| + | Patches are gladly welcome! | ||
Revision as of 12:16, 22 March 2009
Contents |
1 What is DocTest
DocTest is a small program, that checks examples in Haskell source code comments. It is modeled after doctest for Python.
2 Installation
DocTest is available from Hackage. Install it by typing (on your Unix shell):
$ cabal install doctest
3 Usage
Bellow is a small Haskell module. The module contains source code comments. Those comments are examples from an interactive Haskell session and demonstrate how the module is used.
module Fib where -- Examples: -- -- > fib 10 -- 55 -- > fib 5 -- 5 fib 0 = 0 fib 1 = 1 fib n = fib (n - 1) + fib (n - 2)
With DocTest you may checks if the implementation satisfies the given examples, by typing (on your Unix shell):
$ doctest Fib.hs
All comment lines following an expression denote the result of that expression. Result is defined by what an REPL
(e.g. ghci) prints toevaluating that expression.
4 Hacking
DocTest development is in an early stage. My public git repository is at:
http://code.haskell.org/~sih/code/DocTest.git/
Patches are gladly welcome!
