##// END OF EJS Templates
Add about dialog in Notebook Help Menu....
Add about dialog in Notebook Help Menu. This allow to get info on version of IPython when running remotely. The about dialog also send a kernel info request and display the banner which is useful for non-python kernel that don't match IPython version

File last commit:

r18251:8601054f
r18359:7fd73a83
Show More
test_validator.py
54 lines | 1.8 KiB | text/x-python | PythonLexer
"""Test nbformat.validator"""
# Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
import os
from .base import TestsBase
from jsonschema import ValidationError
from ..current import read
from ..validator import isvalid, validate
#-----------------------------------------------------------------------------
# Classes and functions
#-----------------------------------------------------------------------------
class TestValidator(TestsBase):
def test_nb2(self):
"""Test that a v2 notebook converted to v3 passes validation"""
with self.fopen(u'test2.ipynb', u'r') as f:
nb = read(f, u'json')
validate(nb)
self.assertEqual(isvalid(nb), True)
def test_nb3(self):
"""Test that a v3 notebook passes validation"""
with self.fopen(u'test3.ipynb', u'r') as f:
nb = read(f, u'json')
validate(nb)
self.assertEqual(isvalid(nb), True)
def test_invalid(self):
"""Test than an invalid notebook does not pass validation"""
# this notebook has a few different errors:
# - the name is an integer, rather than a string
# - one cell is missing its source
# - one cell has an invalid level
with self.fopen(u'invalid.ipynb', u'r') as f:
nb = read(f, u'json')
with self.assertRaises(ValidationError):
validate(nb)
self.assertEqual(isvalid(nb), False)
def test_future(self):
"""Test than a notebook from the future with extra keys passes validation"""
with self.fopen(u'test3plus.ipynb', u'r') as f:
nb = read(f)
with self.assertRaises(ValidationError):
validate(nb, version=3)
self.assertEqual(isvalid(nb, version=3), False)
self.assertEqual(isvalid(nb), True)