##// END OF EJS Templates
CodeMirror shortcuts in QuickHelp...
CodeMirror shortcuts in QuickHelp Our users shouldn't need an internet connection to look at the code mirror shortcuts. This PR places the CM keyboard shortcuts that are currently documented on our website's rendered docs, and places them inside the keyboard shortcuts quickhelp.

File last commit:

r13361:52dae015
r16010:50d49d3f
Show More
test_nbpy.py
48 lines | 1.5 KiB | text/x-python | PythonLexer
# -*- coding: utf8 -*-
from unittest import TestCase
from IPython.utils.py3compat import string_types, iteritems
from . import formattest
from .. import nbpy
from .nbexamples import nb0, nb0_py
class TestPy(formattest.NBFormatTest, TestCase):
nb0_ref = nb0_py
ext = 'py'
mod = nbpy
ignored_keys = ['collapsed', 'outputs', 'prompt_number', 'metadata']
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 iteritems(da):
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:
if isinstance(da, string_types) and isinstance(db, string_types):
# pyfile is not sensitive to preserving leading/trailing
# newlines in blocks through roundtrip
da = da.strip('\n')
db = db.strip('\n')
self.assertEqual(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)