IPython Documentation

Table Of Contents

Previous topic

testing.decorators

Next topic

testing.iptest

This Page

testing.globalipapp

Module: testing.globalipapp

Inheritance diagram for IPython.testing.globalipapp:

Global IPython app to support test running.

We must start our own ipython object and heavily muck with it so that all the modifications IPython makes to system behavior don’t send the doctest machinery into a fit. This code should be considered a gross hack, but it gets the job done.

Classes

StreamProxy

class IPython.testing.globalipapp.StreamProxy(name)

Bases: IPython.utils.io.IOStream

Proxy for sys.stdout/err. This will request the stream at call time allowing for nose’s Capture plugin’s redirection of sys.stdout/err.

Parameters :

name : str

The name of the stream. This will be requested anew at every call

__init__(name)
close()
closed
flush()
stream
write(data)
writelines(lines)

ipnsdict

class IPython.testing.globalipapp.ipnsdict(*a)

Bases: dict

A special subclass of dict for use as an IPython namespace in doctests.

This subclass adds a simple checkpointing capability so that when testing machinery clears it (we use it as the test execution context), it doesn’t get completely destroyed.

In addition, it can handle the presence of the ‘_’ key in a special manner, which is needed because of how Python’s doctest machinery operates with ‘_’. See constructor and update() for details.

__init__(*a)
clear()
copy

D.copy() -> a shallow copy of D

static fromkeys(S[, v]) → New dict with keys from S and values equal to v.

v defaults to None.

get

D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None.

has_key

D.has_key(k) -> True if D has a key k, else False

items

D.items() -> list of D’s (key, value) pairs, as 2-tuples

iteritems

D.iteritems() -> an iterator over the (key, value) items of D

iterkeys

D.iterkeys() -> an iterator over the keys of D

itervalues

D.itervalues() -> an iterator over the values of D

keys

D.keys() -> list of D’s keys

pop

D.pop(k[,d]) -> v, remove specified key and return the corresponding value. If key is not found, d is returned if given, otherwise KeyError is raised

popitem

D.popitem() -> (k, v), remove and return some (key, value) pair as a 2-tuple; but raise KeyError if D is empty.

setdefault

D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D

update(other)
values

D.values() -> list of D’s values

py_file_finder

class IPython.testing.globalipapp.py_file_finder(test_filename)

Bases: object

__init__(test_filename)

Functions

IPython.testing.globalipapp.get_ipython()
IPython.testing.globalipapp.start_ipython()

Start a global IPython shell, which we need for IPython-specific syntax.

IPython.testing.globalipapp.xsys(self, cmd)

Replace the default system call with a capturing one for doctest.