[Python-checkins] python/dist/src/Doc/lib libdoctest.tex,1.12,1.13
rhettinger@users.sourceforge.net
rhettinger@users.sourceforge.net
Fri, 11 Jul 2003 15:32:20 -0700
Update of /cvsroot/python/python/dist/src/Doc/lib
In directory sc8-pr-cvs1:/tmp/cvs-serv655
Modified Files:
libdoctest.tex
Log Message:
Document Jim Fulton's docttest extensions.
Index: libdoctest.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libdoctest.tex,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** libdoctest.tex 28 Jun 2003 03:09:06 -0000 1.12
--- libdoctest.tex 11 Jul 2003 22:32:18 -0000 1.13
***************
*** 66,70 ****
if math.floor(n) != n:
raise ValueError("n must be exact integer")
! if n+1 == n: # e.g., 1e300
raise OverflowError("n too large")
result = 1
--- 66,70 ----
if math.floor(n) != n:
raise ValueError("n must be exact integer")
! if n+1 == n: # catch a value like 1e300
raise OverflowError("n too large")
result = 1
***************
*** 244,254 ****
\subsection{Advanced Usage}
! \function{testmod()} actually creates a local instance of class
! \class{Tester}, runs appropriate methods of that class, and merges
! the results into global \class{Tester} instance \code{master}.
! You can create your own instances of \class{Tester}, and so build your
! own policies, or even run methods of \code{master} directly. See
! \code{Tester.__doc__} for details.
--- 244,316 ----
\subsection{Advanced Usage}
! Several module level functions are available for controlling how doctests
! are run.
! \begin{funcdesc}{debug}{module, name}
! Debug a single docstring containing doctests.
!
! Provide the \var{module} (or dotted name of the module) containing the
! docstring to be debugged and the \var{name} (within the module) of the
! object with the docstring to be debugged.
!
! The doctest examples are extracted (see function \function{testsource()}),
! and written to a temporary file. The Python debugger, \refmodule{pdb},
! is then invoked on that file.
! \versionadded{2.3}
! \end{funcdesc}
!
! \begin{funcdesc}{testmod}{}
! This function provides the most basic interface to the doctests.
! It creates a local instance of class \class{Tester}, runs appropriate
! methods of that class, and merges the results into the global \class{Tester}
! instance, \code{master}.
!
! To get finer control than \function{testmod()} offers, create an instance
! of \class{Tester} with custom policies and run the methods of \code{master}
! directly. See \code{Tester.__doc__} for details.
! \end{funcdesc}
!
! \begin{funcdesc}{testsource}{module, name}
! Extract the doctest examples from a docstring.
!
! Provide the \var{module} (or dotted name of the module) containing the
! tests to be extracted and the \var{name} (within the module) of the object
! with the docstring containing the tests to be extracted.
!
! The doctest examples are returned as a string containing Python
! code. The expected output blocks in the examples are converted
! to Python comments.
! \versionadded{2.3}
! \end{funcdesc}
!
! \begin{funcdesc}{DocTestSuite}{\optional{module}}
! Convert doctest tests for a module to a \refmodule{unittest}
! \class{TestSuite}.
!
! The returned \class{TestSuite} is to be run by the unittest framework
! and runs each doctest in the module. If any of the doctests fail,
! then the synthesized unit test fails, and a \exception{DocTestTestFailure}
! exception is raised showing the name of the file containing the test and a
! (sometimes approximate) line number.
!
! The optional \var{module} argument provides the module to be tested. It
! can be a module object or a (possibly dotted) module name. If not
! specified, the module calling \function{DocTestSuite()} is used.
!
! Example using one of the many ways that the \refmodule{unittest} module
! can use a \class{TestSuite}:
!
! \begin{verbatim}
! import unittest
! import doctest
! import my_module_with_doctests
!
! suite = doctest.DocTestSuite(my_module_with_doctests)
! runner = unittest.TextTestRunner()
! runner.run(suite)
! \end{verbatim}
!
! \versionadded{2.3}
! \end{funcdesc}