35 lines
926 B
Python
35 lines
926 B
Python
|
import pprint
|
||
|
from unittest import TestCase
|
||
|
|
||
|
from ..nbjson import reads, writes
|
||
|
from .nbexamples import nb0
|
||
|
|
||
|
|
||
|
class TestJSON(TestCase):
|
||
|
|
||
|
def test_roundtrip(self):
|
||
|
s = writes(nb0)
|
||
|
# print
|
||
|
# print pprint.pformat(nb0,indent=2)
|
||
|
# print
|
||
|
# print pprint.pformat(reads(s),indent=2)
|
||
|
# print
|
||
|
# print s
|
||
|
self.assertEqual(reads(s),nb0)
|
||
|
|
||
|
def test_roundtrip_nosplit(self):
|
||
|
"""Ensure that multiline blobs are still readable"""
|
||
|
# ensures that notebooks written prior to splitlines change
|
||
|
# are still readable.
|
||
|
s = writes(nb0, split_lines=False)
|
||
|
self.assertEqual(reads(s),nb0)
|
||
|
|
||
|
def test_roundtrip_split(self):
|
||
|
"""Ensure that splitting multiline blocks is safe"""
|
||
|
# This won't differ from test_roundtrip unless the default changes
|
||
|
s = writes(nb0, split_lines=True)
|
||
|
self.assertEqual(reads(s),nb0)
|
||
|
|
||
|
|
||
|
|