##// END OF EJS Templates
Merge pull request #5752 from minrk/msgspec-adapter...
Merge pull request #5752 from minrk/msgspec-adapter Add adapter for msg spec versions

File last commit:

r16478:86f27641
r16699:aeae57d5 merge
Show More
test_kernelspec.py
38 lines | 1.5 KiB | text/x-python | PythonLexer
Thomas Kluyver
Add simple tests for kernel spec machinery
r16478 import json
import os
from os.path import join as pjoin
import unittest
from IPython.utils.tempdir import TemporaryDirectory
from IPython.kernel import kernelspec
sample_kernel_json = {'argv':['cat', '{connection_file}'],
'display_name':'Test kernel',
'language':'bash',
}
class KernelSpecTests(unittest.TestCase):
def setUp(self):
self.tempdir = td = TemporaryDirectory()
self.sample_kernel_dir = pjoin(td.name, 'kernels', 'Sample')
os.makedirs(self.sample_kernel_dir)
json_file = pjoin(self.sample_kernel_dir, 'kernel.json')
with open(json_file, 'w') as f:
json.dump(sample_kernel_json, f)
self.ksm = kernelspec.KernelSpecManager(ipython_dir=td.name)
def tearDown(self):
self.tempdir.cleanup()
def test_find_kernel_specs(self):
kernels = self.ksm.find_kernel_specs()
self.assertEqual(kernels['sample'], self.sample_kernel_dir)
def test_get_kernel_spec(self):
ks = self.ksm.get_kernel_spec('SAMPLE') # Case insensitive
self.assertEqual(ks.resource_dir, self.sample_kernel_dir)
self.assertEqual(ks.argv, sample_kernel_json['argv'])
self.assertEqual(ks.display_name, sample_kernel_json['display_name'])
self.assertEqual(ks.language, sample_kernel_json['language'])
self.assertEqual(ks.codemirror_mode, sample_kernel_json['language'])
self.assertEqual(ks.env, {})