##// END OF EJS Templates
Fix regression in embed() from pull-request #2096....
Fix regression in embed() from pull-request #2096. With certain sets of arguments `compile_flags` might be left as `None`. This caused IPython to internally raise a TypeError when it tried to do a bitwise or between `shell.compile.flags` and `PyCF_ONLY_AST` in `CachingCompiler.ast_parse`. The regression was introduced in: b70ac12 embed(): Default to the future compile flags of the calling frame.

File last commit:

r6563:10f133e4
r8130:89b4dd76
Show More
test_openpy.py
23 lines | 803 B | text/x-python | PythonLexer
import io
import os.path
import nose.tools as nt
from IPython.utils import openpy
mydir = os.path.dirname(__file__)
nonascii_path = os.path.join(mydir, '../../core/tests/nonascii.py')
def test_detect_encoding():
f = open(nonascii_path, 'rb')
enc, lines = openpy.detect_encoding(f.readline)
nt.assert_equal(enc, 'iso-8859-5')
def test_read_file():
read_specified_enc = io.open(nonascii_path, encoding='iso-8859-5').read()
read_detected_enc = openpy.read_py_file(nonascii_path, skip_encoding_cookie=False)
nt.assert_equal(read_detected_enc, read_specified_enc)
assert u'coding: iso-8859-5' in read_detected_enc
read_strip_enc_cookie = openpy.read_py_file(nonascii_path, skip_encoding_cookie=True)
assert u'coding: iso-8859-5' not in read_strip_enc_cookie