diff --git a/IPython/inprocess/tests/test_kernelmanager.py b/IPython/inprocess/tests/test_kernelmanager.py index e6049ab..3a2b9e9 100644 --- a/IPython/inprocess/tests/test_kernelmanager.py +++ b/IPython/inprocess/tests/test_kernelmanager.py @@ -60,6 +60,18 @@ class InProcessKernelManagerTestCase(unittest.TestCase): km.shell_channel.execute('foo = 1') self.assertEquals(km.kernel.shell.user_ns['foo'], 1) + def test_complete(self): + """ Does requesting completion from an in-process kernel work? + """ + km = BlockingInProcessKernelManager() + km.start_kernel() + km.kernel.shell.push({'my_bar': 0, 'my_baz': 1}) + km.shell_channel.complete('my_ba', 'my_ba', 5) + msg = km.shell_channel.get_msg() + self.assertEquals(msg['header']['msg_type'], 'complete_reply') + self.assertEquals(sorted(msg['content']['matches']), + ['my_bar', 'my_baz']) + def test_object_info(self): """ Does requesting object information from an in-process kernel work? """ @@ -72,6 +84,19 @@ class InProcessKernelManagerTestCase(unittest.TestCase): self.assertEquals(msg['content']['name'], 'foo') self.assertEquals(msg['content']['type_name'], 'int') + def test_history(self): + """ Does requesting history from an in-process kernel work? + """ + km = BlockingInProcessKernelManager() + km.start_kernel() + km.shell_channel.execute('%who') + km.shell_channel.history(hist_access_type='tail', n=1) + msg = km.shell_channel.get_msgs()[-1] + self.assertEquals(msg['header']['msg_type'], 'history_reply') + history = msg['content']['history'] + self.assertEquals(len(history), 1) + self.assertEquals(history[0][2], '%who') + if __name__ == '__main__': unittest.main()