##// END OF EJS Templates
Fix critical bug with pylab support inadvertently introduced in #648....
Fix critical bug with pylab support inadvertently introduced in #648. code used it as a dict. Updated that code to handle a dict correctly, and added tests to catch this issue in the future (also increases test coverage of pylab code).

File last commit:

r5468:cd84e0ef
r5468:cd84e0ef
Show More
test_pylabtools.py
62 lines | 2.0 KiB | text/x-python | PythonLexer
"""Tests for pylab tools module.
"""
#-----------------------------------------------------------------------------
# Copyright (c) 2011, the IPython Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from __future__ import print_function
# Stdlib imports
# Third-party imports
import matplotlib; matplotlib.use('Agg')
import nose.tools as nt
from matplotlib import pyplot as plt
import numpy as np
# Our own imports
from IPython.testing import decorators as dec
from .. import pylabtools as pt
#-----------------------------------------------------------------------------
# Globals and constants
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Local utilities
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Classes and functions
#-----------------------------------------------------------------------------
@dec.parametric
def test_figure_to_svg():
# simple empty-figure test
fig = plt.figure()
yield nt.assert_equal(pt.print_figure(fig, 'svg'), None)
plt.close('all')
# simple check for at least svg-looking output
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.plot([1,2,3])
plt.draw()
svg = pt.print_figure(fig, 'svg')[:100].lower()
yield nt.assert_true('doctype svg' in svg)
def test_import_pylab():
ip = get_ipython()
pt.import_pylab(ip.user_ns, 'inline', import_all=False, shell=ip)
nt.assert_true('plt' in ip.user_ns)
nt.assert_equal(ip.user_ns['np'], np)