test_exporter.py
59 lines
| 1.8 KiB
| text/x-python
|
PythonLexer
Jonathan Frederic
|
r12521 | """ | ||
Module with tests for exporter.py | ||||
""" | ||||
#----------------------------------------------------------------------------- | ||||
# Copyright (c) 2013, the IPython Development Team. | ||||
# | ||||
# Distributed under the terms of the Modified BSD License. | ||||
# | ||||
# The full license is in the file COPYING.txt, distributed with this software. | ||||
#----------------------------------------------------------------------------- | ||||
#----------------------------------------------------------------------------- | ||||
# Imports | ||||
#----------------------------------------------------------------------------- | ||||
from IPython.config import Config | ||||
from .base import ExportersTestsBase | ||||
from ...preprocessors.base import Preprocessor | ||||
from ..exporter import Exporter | ||||
#----------------------------------------------------------------------------- | ||||
# Class | ||||
#----------------------------------------------------------------------------- | ||||
class PizzaPreprocessor(Preprocessor): | ||||
"""Simple preprocessor that adds a 'pizza' entry to the NotebookNode. Used | ||||
to test Exporter. | ||||
""" | ||||
def preprocess(self, nb, resources): | ||||
nb['pizza'] = 'cheese' | ||||
return nb, resources | ||||
class TestExporter(ExportersTestsBase): | ||||
"""Contains test functions for exporter.py""" | ||||
def test_constructor(self): | ||||
"""Can an Exporter be constructed?""" | ||||
Exporter() | ||||
def test_export(self): | ||||
"""Can an Exporter export something?""" | ||||
exporter = Exporter() | ||||
(notebook, resources) = exporter.from_filename(self._get_notebook()) | ||||
assert isinstance(notebook, dict) | ||||
def test_preprocessor(self): | ||||
"""Do preprocessors work?""" | ||||
config = Config({'Exporter': {'preprocessors': [PizzaPreprocessor()]}}) | ||||
exporter = Exporter(config=config) | ||||
(notebook, resources) = exporter.from_filename(self._get_notebook()) | ||||
self.assertEqual(notebook['pizza'], 'cheese') | ||||