summaryrefslogtreecommitdiffstats
path: root/web/input/doc/faq/extra-tests.md
diff options
context:
space:
mode:
Diffstat (limited to 'web/input/doc/faq/extra-tests.md')
-rw-r--r--web/input/doc/faq/extra-tests.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/web/input/doc/faq/extra-tests.md b/web/input/doc/faq/extra-tests.md
new file mode 100644
index 0000000..b508195
--- /dev/null
+++ b/web/input/doc/faq/extra-tests.md
@@ -0,0 +1,26 @@
1title: Testing C routines
2parent: FAQ
3---
4
5# Can I add extra tests to the C routines?
6
7The idea with the testing is to move as many functions as possible "lower
8down"; i.e., to the `lib/utils_*.c` files. These functions can then be tested
9using the libtap routines in the `lib/tests/test_*.c` files. It is easier to
10do unit testing here than to try and do higher level plugin testing, because
11you can fake data easier at this level.
12
13The routines available via [libtap][libtap] are equivalent to Perl's
14[Test::Simple][test-simple] ones.
15
16The libtap tests are separated out from the plugins ones (in `plugins/t`)
17because:
18
191. They are testing the files in `lib/`, so should reside there.
202. They require [compiling][compilation] to run.
21
22[libtap]: http://jc.ngo.org.uk/trac-bin/trac.cgi/wiki/LibTap "libtap"
23[test-simple]: http://search.cpan.org/dist/Test-Simple/lib/Test/Simple.pm "Test::Simple Module"
24[compilation]: doc/faq/compilation.html "Compilation"
25
26<!--% # vim:set filetype=markdown textwidth=78 joinspaces: # %-->