##// END OF EJS Templates
remove strict requirement for less,invoke in wheel/sdist...
remove strict requirement for less,invoke in wheel/sdist move the strictness to our release script this means others can build personal wheels without less, invoke, but IPython releases still cannot be made without them, which is the real goal.

File last commit:

r18708:db31d216
r19847:554d8058
Show More
test_convert.py
72 lines | 1.9 KiB | text/x-python | PythonLexer
# -*- coding: utf-8 -*-
import copy
import nose.tools as nt
from IPython.nbformat import validate
from .. import convert
from . import nbexamples
from IPython.nbformat.v3.tests import nbexamples as v3examples
from IPython.nbformat import v3, v4
def test_upgrade_notebook():
nb03 = copy.deepcopy(v3examples.nb0)
validate(nb03)
nb04 = convert.upgrade(nb03)
validate(nb04)
def test_downgrade_notebook():
nb04 = copy.deepcopy(nbexamples.nb0)
validate(nb04)
nb03 = convert.downgrade(nb04)
validate(nb03)
def test_upgrade_heading():
v3h = v3.new_heading_cell
v4m = v4.new_markdown_cell
for v3cell, expected in [
(
v3h(source='foo', level=1),
v4m(source='# foo'),
),
(
v3h(source='foo\nbar\nmulti-line\n', level=4),
v4m(source='#### foo bar multi-line'),
),
(
v3h(source=u'ünìcö∂e–cønvërsioñ', level=4),
v4m(source=u'#### ünìcö∂e–cønvërsioñ'),
),
]:
upgraded = convert.upgrade_cell(v3cell)
nt.assert_equal(upgraded, expected)
def test_downgrade_heading():
v3h = v3.new_heading_cell
v4m = v4.new_markdown_cell
v3m = lambda source: v3.new_text_cell('markdown', source)
for v4cell, expected in [
(
v4m(source='# foo'),
v3h(source='foo', level=1),
),
(
v4m(source='#foo'),
v3h(source='foo', level=1),
),
(
v4m(source='#\tfoo'),
v3h(source='foo', level=1),
),
(
v4m(source='# \t foo'),
v3h(source='foo', level=1),
),
(
v4m(source='# foo\nbar'),
v3m(source='# foo\nbar'),
),
]:
downgraded = convert.downgrade_cell(v4cell)
nt.assert_equal(downgraded, expected)