##// END OF EJS Templates
[core][tests][hooks] Remove nose
Samuel Gaist -
Show More
@@ -1,80 +1,78 b''
1 1 # -*- coding: utf-8 -*-
2 2 """Tests for CommandChainDispatcher."""
3 3
4 4
5 5 #-----------------------------------------------------------------------------
6 6 # Imports
7 7 #-----------------------------------------------------------------------------
8 8
9 import nose.tools as nt
10 9 from IPython.core.error import TryNext
11 10 from IPython.core.hooks import CommandChainDispatcher
12 11
13 12 #-----------------------------------------------------------------------------
14 13 # Local utilities
15 14 #-----------------------------------------------------------------------------
16 15
17 16 # Define two classes, one which succeeds and one which raises TryNext. Each
18 17 # sets the attribute `called` to True when it is called.
19 18 class Okay(object):
20 19 def __init__(self, message):
21 20 self.message = message
22 21 self.called = False
23 22 def __call__(self):
24 23 self.called = True
25 24 return self.message
26 25
27 26 class Fail(object):
28 27 def __init__(self, message):
29 28 self.message = message
30 29 self.called = False
31 30 def __call__(self):
32 31 self.called = True
33 32 raise TryNext(self.message)
34 33
35 34 #-----------------------------------------------------------------------------
36 35 # Test functions
37 36 #-----------------------------------------------------------------------------
38 37
39 38 def test_command_chain_dispatcher_ff():
40 39 """Test two failing hooks"""
41 fail1 = Fail(u'fail1')
42 fail2 = Fail(u'fail2')
43 dp = CommandChainDispatcher([(0, fail1),
44 (10, fail2)])
40 fail1 = Fail("fail1")
41 fail2 = Fail("fail2")
42 dp = CommandChainDispatcher([(0, fail1), (10, fail2)])
45 43
46 44 try:
47 45 dp()
48 46 except TryNext as e:
49 nt.assert_equal(str(e), u'fail2')
47 assert str(e) == "fail2"
50 48 else:
51 49 assert False, "Expected exception was not raised."
52 50
53 nt.assert_true(fail1.called)
54 nt.assert_true(fail2.called)
51 assert fail1.called is True
52 assert fail2.called is True
55 53
56 54 def test_command_chain_dispatcher_fofo():
57 55 """Test a mixture of failing and succeeding hooks."""
58 fail1 = Fail(u'fail1')
59 fail2 = Fail(u'fail2')
60 okay1 = Okay(u'okay1')
61 okay2 = Okay(u'okay2')
56 fail1 = Fail("fail1")
57 fail2 = Fail("fail2")
58 okay1 = Okay("okay1")
59 okay2 = Okay("okay2")
62 60
63 61 dp = CommandChainDispatcher([(0, fail1),
64 62 # (5, okay1), # add this later
65 63 (10, fail2),
66 64 (15, okay2)])
67 65 dp.add(okay1, 5)
68 66
69 nt.assert_equal(dp(), u'okay1')
67 assert dp() == "okay1"
70 68
71 nt.assert_true(fail1.called)
72 nt.assert_true(okay1.called)
73 nt.assert_false(fail2.called)
74 nt.assert_false(okay2.called)
69 assert fail1.called is True
70 assert okay1.called is True
71 assert fail2.called is False
72 assert okay2.called is False
75 73
76 74 def test_command_chain_dispatcher_eq_priority():
77 75 okay1 = Okay(u'okay1')
78 76 okay2 = Okay(u'okay2')
79 77 dp = CommandChainDispatcher([(1, okay1)])
80 78 dp.add(okay2, 1)
General Comments 0
You need to be logged in to leave comments. Login now