# Difference between revisions of "DocTest"

From HaskellWiki

SimonHengel (talk | contribs) (Redirect to GitHub) |
SimonHengel (talk | contribs) (Replacing page with 'The content of this page has moved to: here: https://github.com/sol/doctest-haskell#readme') |
||

Line 1: | Line 1: | ||

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

− | ==What is DocTest== |
||

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

− | [http://www.haskell.org/haddock/doc/html/ch03s08.html#id566093 examples in Haddock 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: |
||

− | <pre> |
||

− | $ cabal install doctest |
||

− | </pre> |
||

− | |||

− | ==Usage== |
||

− | Below is a small Haskell module. The module contains a Haddock comment with some examples of interaction. The examples demonstrate how the module is supposed to be 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> |
||

− | |||

− | (A line starting with <hask>>>></hask> denotes an ''expression''. 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.) |
||

− | |||

− | With DocTest you may check whether the implementation satisfies the given examples, by typing: |
||

− | |||

− | <pre> |
||

− | $ doctest Fib.hs |
||

− | </pre> |
||

− | |||

− | You may produce Haddock documentation for that module with: |
||

− | |||

− | <pre> |
||

− | $ haddock -h Fib.hs -o doc/ |
||

− | </pre> |
||

− | |||

− | ==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! |

## Revision as of 15:16, 23 June 2012

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