##// END OF EJS Templates
only check for formatters on instances...
only check for formatters on instances use inspect.isclass to disallow unbound methods, not type checking on the method itself

File last commit:

r18605:9867311c
r19026:7658e7aa
Show More
test_notebook.py
39 lines | 1.3 KiB | text/x-python | PythonLexer
"""Tests for notebook.py"""
# Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
import json
from .base import ExportersTestsBase
from ..notebook import NotebookExporter
from IPython.nbformat import validate
from IPython.testing.tools import assert_big_text_equal
class TestNotebookExporter(ExportersTestsBase):
"""Contains test functions for notebook.py"""
exporter_class = NotebookExporter
def test_export(self):
"""
Does the NotebookExporter return the file unchanged?
"""
with open(self._get_notebook()) as f:
file_contents = f.read()
(output, resources) = self.exporter_class().from_filename(self._get_notebook())
assert len(output) > 0
assert_big_text_equal(output, file_contents)
def test_downgrade_3(self):
exporter = self.exporter_class(nbformat_version=3)
(output, resources) = exporter.from_filename(self._get_notebook())
nb = json.loads(output)
validate(nb)
def test_downgrade_2(self):
exporter = self.exporter_class(nbformat_version=2)
(output, resources) = exporter.from_filename(self._get_notebook())
nb = json.loads(output)
self.assertEqual(nb['nbformat'], 2)