Difference between revisions of "DocTest"

From HaskellWiki
Jump to navigation Jump to search
m
m
 
(6 intermediate revisions by one other user not shown)
Line 1: Line 1:
  +
The content of this page has moved to: 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].
 
   
  +
[[Category:Pages to be removed]]
==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!
 

Latest revision as of 23:16, 11 July 2021

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