##// END OF EJS Templates
Revert change to test skip condition...
Thomas Kluyver -
Show More
@@ -1,66 +1,64 b''
1 1 import json
2 2 import os
3 3 from os.path import join as pjoin
4 4 import unittest
5 5
6 6 from IPython.testing.decorators import onlyif
7 7 from IPython.utils.tempdir import TemporaryDirectory
8 8 from IPython.kernel import kernelspec
9 9
10 10 sample_kernel_json = {'argv':['cat', '{connection_file}'],
11 11 'display_name':'Test kernel',
12 12 }
13 13
14 14 class KernelSpecTests(unittest.TestCase):
15 15 def setUp(self):
16 16 td = TemporaryDirectory()
17 17 self.addCleanup(td.cleanup)
18 18 self.sample_kernel_dir = pjoin(td.name, 'kernels', 'Sample')
19 19 os.makedirs(self.sample_kernel_dir)
20 20 json_file = pjoin(self.sample_kernel_dir, 'kernel.json')
21 21 with open(json_file, 'w') as f:
22 22 json.dump(sample_kernel_json, f)
23 23
24 24 self.ksm = kernelspec.KernelSpecManager(ipython_dir=td.name)
25 25
26 26 td2 = TemporaryDirectory()
27 27 self.addCleanup(td2.cleanup)
28 28 self.installable_kernel = td2.name
29 29 with open(pjoin(self.installable_kernel, 'kernel.json'), 'w') as f:
30 30 json.dump(sample_kernel_json, f)
31 31
32 32 def test_find_kernel_specs(self):
33 33 kernels = self.ksm.find_kernel_specs()
34 34 self.assertEqual(kernels['sample'], self.sample_kernel_dir)
35 35
36 36 def test_get_kernel_spec(self):
37 37 ks = self.ksm.get_kernel_spec('SAMPLE') # Case insensitive
38 38 self.assertEqual(ks.resource_dir, self.sample_kernel_dir)
39 39 self.assertEqual(ks.argv, sample_kernel_json['argv'])
40 40 self.assertEqual(ks.display_name, sample_kernel_json['display_name'])
41 41 self.assertEqual(ks.env, {})
42 42
43 43 def test_install_kernel_spec(self):
44 44 self.ksm.install_kernel_spec(self.installable_kernel,
45 45 kernel_name='tstinstalled',
46 46 user=True)
47 47 self.assertIn('tstinstalled', self.ksm.find_kernel_specs())
48 48
49 49 with self.assertRaises(OSError):
50 50 self.ksm.install_kernel_spec(self.installable_kernel,
51 51 kernel_name='tstinstalled',
52 52 user=True)
53 53
54 54 # Smoketest that this succeeds
55 55 self.ksm.install_kernel_spec(self.installable_kernel,
56 56 kernel_name='tstinstalled',
57 57 replace=True, user=True)
58 58
59 @onlyif(kernelspec.find_install_prefix() in {'/usr', '/usr/local'}
60 and not os.access('/usr/local/share', os.W_OK),
61 "needs Unix system without root privileges")
59 @onlyif(os.name != 'nt' and not os.access('/usr/local/share', os.W_OK), "needs Unix system without root privileges")
62 60 def test_cant_install_kernel_spec(self):
63 61 with self.assertRaises(OSError):
64 62 self.ksm.install_kernel_spec(self.installable_kernel,
65 63 kernel_name='tstinstalled',
66 64 user=False)
General Comments 0
You need to be logged in to leave comments. Login now