test_export.py
90 lines
| 2.4 KiB
| text/x-python
|
PythonLexer
Jonathan Frederic
|
r11480 | """ | ||
Module with tests for export.py | ||||
""" | ||||
MinRK
|
r18605 | # Copyright (c) IPython Development Team. | ||
Jonathan Frederic
|
r11480 | # Distributed under the terms of the Modified BSD License. | ||
import os | ||||
MinRK
|
r18605 | from IPython import nbformat | ||
Jonathan Frederic
|
r11480 | |||
from .base import ExportersTestsBase | ||||
from ..export import * | ||||
from ..python import PythonExporter | ||||
Jonathan Frederic
|
r11494 | class TestExport(ExportersTestsBase): | ||
Jonathan Frederic
|
r11480 | """Contains test functions for export.py""" | ||
def test_export_wrong_name(self): | ||||
""" | ||||
Is the right error thrown when a bad template name is used? | ||||
""" | ||||
try: | ||||
export_by_name('not_a_name', self._get_notebook()) | ||||
except ExporterNameError as e: | ||||
pass | ||||
def test_export_filename(self): | ||||
""" | ||||
Can a notebook be exported by filename? | ||||
""" | ||||
(output, resources) = export_by_name('python', self._get_notebook()) | ||||
assert len(output) > 0 | ||||
def test_export_nbnode(self): | ||||
""" | ||||
Can a notebook be exported by a notebook node handle? | ||||
""" | ||||
with open(self._get_notebook(), 'r') as f: | ||||
MinRK
|
r18605 | notebook = nbformat.read(f, 4) | ||
Jonathan Frederic
|
r11480 | (output, resources) = export_by_name('python', notebook) | ||
assert len(output) > 0 | ||||
def test_export_filestream(self): | ||||
""" | ||||
Can a notebook be exported by a filesteam? | ||||
""" | ||||
with open(self._get_notebook(), 'r') as f: | ||||
(output, resources) = export_by_name('python', f) | ||||
assert len(output) > 0 | ||||
def test_export_using_exporter(self): | ||||
""" | ||||
Can a notebook be exported using an instanciated exporter? | ||||
""" | ||||
(output, resources) = export(PythonExporter(), self._get_notebook()) | ||||
assert len(output) > 0 | ||||
def test_export_using_exporter_class(self): | ||||
""" | ||||
Can a notebook be exported using an exporter class type? | ||||
""" | ||||
(output, resources) = export(PythonExporter, self._get_notebook()) | ||||
assert len(output) > 0 | ||||
def test_export_resources(self): | ||||
""" | ||||
Can a notebook be exported along with a custom resources dict? | ||||
""" | ||||
(output, resources) = export(PythonExporter, self._get_notebook(), resources={}) | ||||
assert len(output) > 0 | ||||
def test_no_exporter(self): | ||||
""" | ||||
Is the right error thrown if no exporter is provided? | ||||
""" | ||||
try: | ||||
(output, resources) = export(None, self._get_notebook()) | ||||
except TypeError: | ||||
pass | ||||
Matthias BUSSONNIER
|
r12500 | |||