#----------------------------------------------------------------------------- # Copyright (C) 2010-2011 The IPython Development Team. # # Distributed under the terms of the BSD License. # # The full license is in the file COPYING.txt, distributed with this software. #----------------------------------------------------------------------------- import os import nose.tools as nt from IPython.core import display from IPython.utils import path as ipath def test_image_size(): """Simple test for display.Image(args, width=x,height=y)""" thisurl = 'http://www.google.fr/images/srpr/logo3w.png' img = display.Image(url=thisurl, width=200, height=200) nt.assert_equal(u'' % (thisurl), img._repr_html_()) img = display.Image(url=thisurl, width=200) nt.assert_equal(u'' % (thisurl), img._repr_html_()) img = display.Image(url=thisurl) nt.assert_equal(u'' % (thisurl), img._repr_html_()) def test_retina_png(): here = os.path.dirname(__file__) img = display.Image(os.path.join(here, "2x2.png"), retina=True) nt.assert_equal(img.height, 1) nt.assert_equal(img.width, 1) data, md = img._repr_png_() nt.assert_equal(md['width'], 1) nt.assert_equal(md['height'], 1) def test_retina_jpeg(): here = os.path.dirname(__file__) img = display.Image(os.path.join(here, "2x2.jpg"), retina=True) nt.assert_equal(img.height, 1) nt.assert_equal(img.width, 1) data, md = img._repr_jpeg_() nt.assert_equal(md['width'], 1) nt.assert_equal(md['height'], 1) def test_image_filename_defaults(): '''test format constraint, and validity of jpeg and png''' tpath = ipath.get_ipython_package_dir() nt.assert_raises(ValueError, display.Image, filename=os.path.join(tpath, 'testing/tests/badformat.gif'), embed=True) nt.assert_raises(ValueError, display.Image) nt.assert_raises(ValueError, display.Image, data='this is not an image', format='badformat', embed=True) from IPython.html import DEFAULT_STATIC_FILES_PATH # check boths paths to allow packages to test at build and install time imgfile = os.path.join(tpath, 'html/static/base/images/ipynblogo.png') if not os.path.exists(imgfile): imgfile = os.path.join(DEFAULT_STATIC_FILES_PATH, 'base/images/ipynblogo.png') img = display.Image(filename=imgfile) nt.assert_equal('png', img.format) nt.assert_is_not_none(img._repr_png_()) img = display.Image(filename=os.path.join(tpath, 'testing/tests/logo.jpg'), embed=False) nt.assert_equal('jpeg', img.format) nt.assert_is_none(img._repr_jpeg_())