NIPY logo

Site Navigation

NIPY Community

Github repo

Table Of Contents

Previous topic

testing.decorators

This Page

testing.doctester

Module: testing.doctester

Inheritance diagram for nipy.testing.doctester:

Custom doctester based on Numpy doctester

Classes

NipyDoctest

class nipy.testing.doctester.NipyDoctest

Bases: nipy.fixes.numpy.testing.noseclasses.NumpyDoctest

Attributes

enableOpt
extension

Methods

addOptions
add_options
afterContext
configure
doctest_case_class
help
loadTestsFromFile
loadTestsFromModule
makeTest
matches
options
out_check_class
prepareTestLoader
set_test_context
suiteClass
test_finder_class
tolist
wantFile
__init__()
addOptions(parser, env=None)

Add command-line options for this plugin.

The base plugin class adds –with-$name by default, used to enable the plugin.

Warning

Don’t implement addOptions unless you want to override all default option handling behavior, including warnings for conflicting options. Implement options instead.

add_options(parser, env=None)

Non-camel-case version of func name for backwards compatibility.

Warning

DEPRECATED: Do not use this method, use options instead.

afterContext()
configure(options, config)
doctest_case_class

alias of NumpyDocTestCase

help()

Return help for this plugin. This will be output as the help section of the –with-$name option that enables the plugin.

loadTestsFromFile(filename)

Load doctests from the file.

Tests are loaded only if filename’s extension matches configured doctest extension.

loadTestsFromModule(module)
makeTest(obj, parent)

Look for doctests in the given object, which will be a function, method or class.

matches(name)
options(parser, env={'CPPFLAGS': '', 'LC_NUMERIC': 'ru_RU.UTF-8', 'DEB_BUILD_GNU_SYSTEM': 'linux-gnu', 'DEB_BUILD_MULTIARCH': 'x86_64-linux-gnu', 'DEB_HOST_ARCH_ENDIAN': 'little', 'PYTHONPATH': '/tmp/buildd/nipy-0.2.0/build/lib.linux-x86_64-2.7', 'DEB_BUILD_ARCH': 'amd64', 'DEB_BUILD_ARCH_OS': 'linux', 'LC_MEASUREMENT': 'ru_RU.UTF-8', 'LC_CTYPE': 'en_US.UTF-8', 'DEB_HOST_ARCH_OS': 'linux', 'CXXFLAGS': '-g -O2', 'DEB_HOST_ARCH': 'amd64', 'FAKEROOTKEY': '1727797316', 'MPLCONFIGDIR': '/tmp/buildd/nipy-0.2.0/build', 'USER': 'root', 'HOME': '/tmp/buildd/nipy-0.2.0/build', 'LC_PAPER': 'ru_RU.UTF-8', 'PATH': '/usr/lib/ccache:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin', 'PBCURRENTCOMMANDLINEOPERATION': 'build', 'LD_LIBRARY_PATH': '/usr/lib/libfakeroot:/usr/lib64/libfakeroot:/usr/lib32/libfakeroot', 'MAKEFLAGS': 'w', 'LC_TIME': 'en_US.UTF-8', 'LANG': 'C', 'DEB_BUILD_ARCH_BITS': '64', 'TERM': 'screen', 'SHELL': '/bin/bash', 'DEB_BUILD_ARCH_ENDIAN': 'little', 'MAKELEVEL': '2', 'SHLVL': '7', 'PBUILDER_PKGLIBDIR': '/usr/lib/pbuilder', 'DEB_HOST_GNU_TYPE': 'x86_64-linux-gnu', 'DEB_HOST_GNU_CPU': 'x86_64', 'COWDANCER_ILISTFILE': '/.ilist', 'DEBIAN_FRONTEND': 'noninteractive', 'LC_ADDRESS': 'ru_RU.UTF-8', 'DEB_HOST_MULTIARCH': 'x86_64-linux-gnu', 'DH_VERBOSE': '1', 'SUDO_USER': 'neurodebian', 'MFLAGS': '-w', 'DEB_BUILD_ARCH_CPU': 'amd64', 'DEB_BUILD_GNU_TYPE': 'x86_64-linux-gnu', 'USERNAME': 'root', 'LC_IDENTIFICATION': 'ru_RU.UTF-8', 'PBUILDER_PKGDATADIR': '/usr/share/pbuilder', 'FFLAGS': '-g -O2', 'DEB_HOST_ARCH_BITS': '64', 'SUDO_UID': '1234', 'FAKED_MODE': 'unknown-is-root', 'MAIL': '/var/mail/root', 'LC_ALL': 'C', 'PBUILDER_SYSCONFDIR': '/etc', '_': 'debian/rules', 'LOGNAME': 'pbuilder', 'LD_PRELOAD': 'libfakeroot-sysv.so', 'SUDO_COMMAND': '/usr/bin/nd_build4all nipy_0.2.0-1.dsc', 'SUDO_GID': '1234', 'LC_MESSAGES': 'en_US.UTF-8', 'LC_COLLATE': 'en_US.UTF-8', 'LC_TELEPHONE': 'ru_RU.UTF-8', 'DEB_HOST_ARCH_CPU': 'amd64', 'LC_MONETARY': 'ru_RU.UTF-8', 'PWD': '/tmp/buildd/nipy-0.2.0/doc', 'DEB_BUILD_GNU_CPU': 'x86_64', 'CFLAGS': '-g -O2', 'LC_NAME': 'ru_RU.UTF-8', 'CCACHE_DIR': '/var/cache/pbuilder/ccache', 'DEB_HOST_GNU_SYSTEM': 'linux-gnu', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:', 'OLDPWD': '/tmp/buildd/nipy-0.2.0', 'COWDANCER_REUSE': 'yes'})
out_check_class

alias of NipyOutputChecker

prepareTestLoader(loader)

Capture loader’s suiteClass.

This is used to create test suites from doctest files.

set_test_context(test)
suiteClass

alias of DoctestSuite

test_finder_class

alias of NumpyDocTestFinder

tolist(val)
wantFile(file)

NipyOutputChecker

class nipy.testing.doctester.NipyOutputChecker

Bases: nipy.fixes.numpy.testing.noseclasses.NumpyOutputChecker

Methods

check_output
output_difference
check_output(want, got, optionflags)
output_difference(example, got, optionflags)

Return a string describing the differences between the expected output for a given example (example) and the actual output (got). optionflags is the set of option flags used to compare want and got.

Functions

nipy.testing.doctester.round_numbers(in_str, precision)

Replace fp numbers in in_str with numbers rounded to precision

Parameters :

in_str : str

string possibly containing floating point numbers

precision : int

number of decimal places to round to

Returns :

out_str : str

in_str with any floating point numbers replaced with same numbers rounded to precision decimal places.

Examples

>>> round_numbers('A=0.234, B=12.345', 2)
'A=0.23, B=12.35'

Rounds the floating point value as it finds it in the string. This is even true for numbers with exponentials. Remember that:

>>> '%.3f' % 0.3339e-10
'0.000'

This routine will recognize an exponential as something to process, but only works on the decimal part (leaving the exponential part is it is):

>>> round_numbers('(0.3339e-10, "string")', 3)
'(0.334e-10, "string")'
nipy.testing.doctester.strip_array_repr(in_str)

Removes array-specific part of repr from string in_str

Parameters :

in_str : str

String maybe containing a repr for an array

Returns :

out_str : str

String from which the array specific parts of the repr have been removed.

Examples

>>> arr = np.arange(5, dtype='i2')

Here’s the normal repr:

>>> arr
array([0, 1, 2, 3, 4], dtype=int16)

The repr with the ‘array’ bits removed:

>>> strip_array_repr(repr(arr))
'[0, 1, 2, 3, 4]'