def test_user_expression():
# enable all formatters
ip.display_formatter.active_types = ip.display_formatter.format_types
query = {
'a' : '1 + 2',
'b' : '1/0',
}
r = ip.user_expressions(query)
import pprint
pprint.pprint(r)
nt.assert_equal(set(r.keys()), set(query.keys()))
a = r['a']
nt.assert_equal({'status', 'data', 'metadata'}, set(a.keys()))
nt.assert_equal(a['status'], 'ok')
data = a['data']
metadata = a['metadata']
nt.assert_equal(data.get('text/plain'), '3')
b = r['b']
nt.assert_equal(b['status'], 'error')
nt.assert_equal(b['ename'], 'ZeroDivisionError')
# back to text only
ip.display_formatter.active_types = ['text/plain']
评论列表
文章目录