<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<!--Converted with LaTeX2HTML 2008 (1.71)
original version by:  Nikos Drakos, CBLU, University of Leeds
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Running unit tests</TITLE>
<META NAME="description" CONTENT="Running unit tests">
<META NAME="keywords" CONTENT="clamdoc">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">

<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="clamdoc.css">

<LINK REL="next" HREF="node18.html">
<LINK REL="previous" HREF="node16.html">
<LINK REL="up" HREF="node11.html">
<LINK REL="next" HREF="node18.html">
</HEAD>

<BODY >

<DIV CLASS="navigation"><!--Navigation Panel-->
<A NAME="tex2html426"
  HREF="node18.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
<A NAME="tex2html422"
  HREF="node11.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
<A NAME="tex2html416"
  HREF="node16.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
<A NAME="tex2html424"
  HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>  
<BR>
<B> Next:</B> <A NAME="tex2html427"
  HREF="node18.html">Reporting a unit test</A>
<B> Up:</B> <A NAME="tex2html423"
  HREF="node11.html">Installation</A>
<B> Previous:</B> <A NAME="tex2html417"
  HREF="node16.html">Compilation with clamav-milter enabled</A>
 &nbsp; <B>  <A NAME="tex2html425"
  HREF="node1.html">Contents</A></B> 
<BR>
<BR></DIV>
<!--End of Navigation Panel-->

<H2><A NAME="SECTION00046000000000000000"></A><A NAME="unit-testing"></A>
<BR>
Running unit tests
</H2>
	ClamAV includes unit tests that allow you to test that the compiled binaries work correctly on your platform.

<P>
The first step is to use your OS's package manager to install the <code>check</code> package. 
	If your OS doesn't have that package, you can download it from <TT><A NAME="tex2html11"
  HREF="http://check.sourceforge.net/">http://check.sourceforge.net/</A></TT>, 
	build it and install it.

<P>
To help clamav's configure script locate <code>check</code>, it is recommended that you install <code>pkg-config</code>, preferably
	using your OS's package manager, or from <TT><A NAME="tex2html12"
  HREF="http://pkg-config.freedesktop.org">http://pkg-config.freedesktop.org</A></TT>.

<P>
The recommended way to run unit-tests is the following, which ensures you will get an error if unit tests cannot be built:
	<A NAME="tex2html13"
  HREF="footnode.html#foot165"><SUP><SPAN CLASS="arabic">7</SPAN></SUP></A>	<PRE>
	 $ ./configure --enable-check
	 $ make
	 $ make check
</PRE>

<P>
When <code>make check</code> is finished, you should get a message similar to this:
	<PRE>
==================
All 8 tests passed
==================
</PRE>

<P>
If a unit test fails, you get a message similar to the following. 
	See the next section on how to report a bug when a unit test fails.
	<PRE>
========================================
1 of 8 tests failed
Please report to http://bugs.clamav.net/
========================================
</PRE>

<P>
If unit tests are disabled (and you didn't use -enable-check), you will get this message:
	<PRE>
*** Unit tests disabled in this build
*** Use ./configure --enable-check to enable them

SKIP: check_clamav
PASS: check_clamd.sh
PASS: check_freshclam.sh
PASS: check_sigtool.sh
PASS: check_clamscan.sh
======================
All 4 tests passed
(1 tests were not run)
======================
</PRE>
	Running <code>./configure --enable-check</code> should tell you why.

<P>

<DIV CLASS="navigation"><HR>
<!--Navigation Panel-->
<A NAME="tex2html426"
  HREF="node18.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
<A NAME="tex2html422"
  HREF="node11.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
<A NAME="tex2html416"
  HREF="node16.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
<A NAME="tex2html424"
  HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>  
<BR>
<B> Next:</B> <A NAME="tex2html427"
  HREF="node18.html">Reporting a unit test</A>
<B> Up:</B> <A NAME="tex2html423"
  HREF="node11.html">Installation</A>
<B> Previous:</B> <A NAME="tex2html417"
  HREF="node16.html">Compilation with clamav-milter enabled</A>
 &nbsp; <B>  <A NAME="tex2html425"
  HREF="node1.html">Contents</A></B> </DIV>
<!--End of Navigation Panel-->
<ADDRESS>
Tomasz Kojm
2010-05-19
</ADDRESS>
</BODY>
</HTML>