##// END OF EJS Templates
Adde slimerjs support to JS tests...
Adde slimerjs support to JS tests This commit contains 16 more, squashed commits: Added slimerjs flag Fixed some bugs with flag code Figured out how to add arg correctly Cleanup Improvements to the test framework for FF Log to see if slimmer is actually running Added print in controller to debug Added full logging to casperjs Remove the special logging logic since it was caussing a failure remove notebook.dirty = false line in favor of overwritting onbeforeunload. Capture output for slimerjs Fixed iptestcontroller rebase issues Fixed rebase issues. Wait for notebook to load completely before testing Fixed stdout capture for slimerjs tests. Clean-up comments in util.js Added slimerjs to Travis Fixed indent .travis.yml Comment out slimerjslauncher env var. Removed zmq flag which doesn't work there anyways, it was added by me in a recent commit Fixed travis yaml, broken because of rebase

File last commit:

r9140:06edb0ca
r16828:f3ebe117
Show More
test_compilerop.py
75 lines | 2.3 KiB | text/x-python | PythonLexer
# coding: utf-8
"""Tests for the compilerop module.
"""
#-----------------------------------------------------------------------------
# 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.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from __future__ import print_function
# Stdlib imports
import linecache
import sys
# Third-party imports
import nose.tools as nt
# Our own imports
from IPython.core import compilerop
from IPython.utils import py3compat
#-----------------------------------------------------------------------------
# Test functions
#-----------------------------------------------------------------------------
def test_code_name():
code = 'x=1'
name = compilerop.code_name(code)
nt.assert_true(name.startswith('<ipython-input-0'))
def test_code_name2():
code = 'x=1'
name = compilerop.code_name(code, 9)
nt.assert_true(name.startswith('<ipython-input-9'))
def test_cache():
"""Test the compiler correctly compiles and caches inputs
"""
cp = compilerop.CachingCompiler()
ncache = len(linecache.cache)
cp.cache('x=1')
nt.assert_true(len(linecache.cache) > ncache)
def setUp():
# Check we're in a proper Python 2 environment (some imports, such
# as GTK, can change the default encoding, which can hide bugs.)
nt.assert_equal(sys.getdefaultencoding(), "utf-8" if py3compat.PY3 else "ascii")
def test_cache_unicode():
cp = compilerop.CachingCompiler()
ncache = len(linecache.cache)
cp.cache(u"t = 'žćčšđ'")
nt.assert_true(len(linecache.cache) > ncache)
def test_compiler_check_cache():
"""Test the compiler properly manages the cache.
"""
# Rather simple-minded tests that just exercise the API
cp = compilerop.CachingCompiler()
cp.cache('x=1', 99)
# Ensure now that after clearing the cache, our entries survive
linecache.checkcache()
for k in linecache.cache:
if k.startswith('<ipython-input-99'):
break
else:
raise AssertionError('Entry for input-99 missing from linecache')