Put full kernel info in REST API response for all kernels

Thomas Kluyver 12 years ago
parent f6628b7006
commit 76fdfe9eb7

@ -19,8 +19,9 @@ class MainKernelSpecHandler(IPythonHandler):
ksm = self.kernel_spec_manager
results = []
for kernel_name in ksm.find_kernel_specs():
results.append(dict(name=kernel_name,
display_name=ksm.get_kernel_spec(kernel_name).display_name))
d = ksm.get_kernel_spec(kernel_name).to_dict()
d['name'] = kernel_name
results.append(d)
self.set_header("Content-Type", 'application/json')
self.finish(jsonapi.dumps(results))

@ -68,11 +68,14 @@ class APITest(NotebookTestBase):
def test_list_kernelspecs(self):
specs = self.ks_api.list().json()
assert isinstance(specs, list)
# 2: the sample kernelspec created in setUp, and the native Python kernel
self.assertEqual(len(specs), 2)
assert any(s == {'name': 'sample', 'display_name': 'Test kernel'}
for s in specs), specs
def is_sample_kernelspec(s):
return s['name'] == 'sample' and s['display_name'] == 'Test kernel'
assert any(is_sample_kernelspec(s) for s in specs), specs
def test_get_kernelspec(self):
spec = self.ks_api.kernel_spec_info('Sample').json() # Case insensitive

Loading…
Cancel
Save