\Header{testEqual}{Compare Two Objects}
\methalias{testEqual.array}{testEqual}
\methalias{testEqual.default}{testEqual}
\methalias{testEqual.list}{testEqual}
\methalias{testEqual.matrix}{testEqual}
\methalias{testEqual.numeric}{testEqual}
\keyword{programming}{testEqual}
\keyword{utilities}{testEqual}
\begin{Description}\relax
Generic function to compare two objects.  The methods return a 
logical value, TRUE if the objects are the same type and value and FALSE otherwise.
The default compares array values but not attributes or class.
Some descriptive information in the objects may be ignored.
\end{Description}
\begin{Usage}
\begin{verbatim}
    testEqual(obj1, obj2, fuzz = 0)
    ## Default S3 method:
    testEqual(obj1, obj2, fuzz = 1e-16)
    ## S3 method for class 'array':
    testEqual(obj1, obj2, fuzz = 1e-16)
    ## S3 method for class 'list':
    testEqual(obj1, obj2, fuzz = 1e-16)
    ## S3 method for class 'matrix':
    testEqual(obj1, obj2, fuzz = 1e-16)
    ## S3 method for class 'numeric':
    testEqual(obj1, obj2, fuzz = 1e-16)
    \end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{obj1, obj2}] Objects of the same class.
\item[\code{fuzz}] Differences less than fuzz are ignored.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
The functions for comparing numeric values used in the default method for this 
generic replacement.
\end{Details}
\begin{Value}
TRUE or FALSE.\end{Value}
\begin{SeeAlso}\relax
\code{\Link{testEqualtframes}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
testEqual(matrix(1:10,10,2), array(1:10, c(10,2)))
testEqual(matrix(1:10,10,1),1:10)
\end{ExampleCode}
\end{Examples}

