##// END OF EJS Templates
substitute open(...) for file(...)...
substitute open(...) for file(...) The file type is gone in py3k, and all file objects are under the new io hierarchy. Since open(...) is supported on both Python 2 and 3, use it instead of file in all instances. This isn't caught by 2to3.

File last commit:

r6476:ef2fac7e
r6650:15f8e057
Show More
test_nbpy.py
46 lines | 1.4 KiB | text/x-python | PythonLexer
MinRK
add NBFormatTestCase base class, to consolidate nbformat testing
r6209 # -*- coding: utf8 -*-
MinRK
NBFormatTest is now a mixin, rather than a base class
r6476
from unittest import TestCase
MinRK
add NBFormatTestCase base class, to consolidate nbformat testing
r6209 from . import formattest
Brian E. Granger
Initial draft of more formal notebook format....
r4401
MinRK
add NBFormatTestCase base class, to consolidate nbformat testing
r6209 from .. import nbpy
Brian E. Granger
Full versioning added to nbformat.
r4406 from .nbexamples import nb0, nb0_py
Brian E. Granger
Initial draft of more formal notebook format....
r4401
MinRK
NBFormatTest is now a mixin, rather than a base class
r6476 class TestPy(formattest.NBFormatTest, TestCase):
Brian E. Granger
Initial draft of more formal notebook format....
r4401
MinRK
add NBFormatTestCase base class, to consolidate nbformat testing
r6209 nb0_ref = nb0_py
ext = 'py'
mod = nbpy
ignored_keys = ['collapsed', 'outputs', 'prompt_number', 'metadata']
Brian E. Granger
Initial draft of more formal notebook format....
r4401
MinRK
add NBFormatTestCase base class, to consolidate nbformat testing
r6209 def assertSubset(self, da, db):
"""assert that da is a subset of db, ignoring self.ignored_keys.
Called recursively on containers, ultimately comparing individual
elements.
"""
if isinstance(da, dict):
for k,v in da.iteritems():
if k in self.ignored_keys:
continue
self.assertTrue(k in db)
self.assertSubset(v, db[k])
elif isinstance(da, list):
for a,b in zip(da, db):
self.assertSubset(a,b)
else:
MinRK
preserve trailing newlines in ipynb...
r6318 if isinstance(da, basestring) and isinstance(db, basestring):
# pyfile is not sensitive to preserving leading/trailing
# newlines in blocks through roundtrip
da = da.strip('\n')
db = db.strip('\n')
MinRK
add NBFormatTestCase base class, to consolidate nbformat testing
r6209 self.assertEquals(da, db)
return True
def assertNBEquals(self, nba, nbb):
# since roundtrip is lossy, only compare keys that are preserved
# assumes nba is read from my file format
return self.assertSubset(nba, nbb)