# DocTest

### From HaskellWiki

(Difference between revisions)

SimonHengel (Talk | contribs) (Update for 0.1.0) |
SimonHengel (Talk | contribs) m |
||

(13 intermediate revisions by one user not shown) | |||

Line 1: | Line 1: | ||

− | ==What is DocTest== |
+ | The content of this page has moved to: https://github.com/sol/doctest-haskell#readme |

− | DocTest is a small program, that checks examples in |
||

− | Haskell source code comments. It is modeled after |
||

− | [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. |
||

− | Those comments are examples from an interactive Haskell session and demonstrate how the module is used. |
||

− | |||

− | <haskell> |
||

− | module Fib where |
||

− | |||

− | -- | Compute Fibonacci numbers |
||

− | -- |
||

− | -- Examples: |
||

− | -- |
||

− | -- >>> fib 10 |
||

− | -- 55 |
||

− | -- |
||

− | -- >>> fib 5 |
||

− | -- 5 |
||

− | fib :: Int -> Int |
||

− | fib 0 = 0 |
||

− | fib 1 = 1 |
||

− | fib n = fib (n - 1) + fib (n - 2) |
||

− | </haskell> |
||

− | |||

− | With DocTest you may checks if the implementation satisfies the given examples, by typing (on your Unix shell): |
||

− | |||

− | <pre> |
||

− | $ doctest Fib.hs |
||

− | </pre> |
||

− | |||

− | Lines starting with <hask>>>></hask> denote ''expressions''. |
||

− | All comment lines following an expression denote the |
||

− | ''result'' of that expression. Result is defined by what an [http://en.wikipedia.org/wiki/Read-eval-print_loop REPL] |
||

− | (e.g. ghci) prints to <hask>stdout</hask> and <hask>stderr</hask> when |
||

− | evaluating that expression. |
||

− | |||

− | ==Hacking== |
||

− | DocTest is still experimental. |
||

− | You can find a reference to the public source repository at |
||

− | [http://hackage.haskell.org/cgi-bin/hackage-scripts/package/DocTest Hackage]. |
||

− | |||

− | Patches are gladly welcome! |

## Latest revision as of 15:16, 23 June 2012

The content of this page has moved to: https://github.com/sol/doctest-haskell#readme