File tree Expand file tree Collapse file tree 2 files changed +46
-0
lines changed Expand file tree Collapse file tree 2 files changed +46
-0
lines changed Original file line number Diff line number Diff line change @@ -201,6 +201,27 @@ def test_uninitialized(self):
201
201
self .assertFalse (fut .cancelled ())
202
202
self .assertFalse (fut .done ())
203
203
204
+ def test_future_cancel_message_getter (self ):
205
+ f = self ._new_future (loop = self .loop )
206
+ self .assertTrue (hasattr (f , '_cancel_message' ))
207
+ self .assertEqual (f ._cancel_message , None )
208
+
209
+ f .cancel ('my message' )
210
+ with self .assertRaises (asyncio .CancelledError ):
211
+ self .loop .run_until_complete (f )
212
+ self .assertEqual (f ._cancel_message , 'my message' )
213
+
214
+ def test_future_cancel_message_setter (self ):
215
+ f = self ._new_future (loop = self .loop )
216
+ f .cancel ('my message' )
217
+ f ._cancel_message = 'my new message'
218
+ self .assertEqual (f ._cancel_message , 'my new message' )
219
+
220
+ # Also check that the value is used for cancel().
221
+ with self .assertRaises (asyncio .CancelledError ):
222
+ self .loop .run_until_complete (f )
223
+ self .assertEqual (f ._cancel_message , 'my new message' )
224
+
204
225
def test_cancel (self ):
205
226
f = self ._new_future (loop = self .loop )
206
227
self .assertTrue (f .cancel ())
Original file line number Diff line number Diff line change @@ -97,6 +97,31 @@ def setUp(self):
97
97
self .loop .set_task_factory (self .new_task )
98
98
self .loop .create_future = lambda : self .new_future (self .loop )
99
99
100
+ def test_task_cancel_message_getter (self ):
101
+ async def coro ():
102
+ pass
103
+ t = self .new_task (self .loop , coro ())
104
+ self .assertTrue (hasattr (t , '_cancel_message' ))
105
+ self .assertEqual (t ._cancel_message , None )
106
+
107
+ t .cancel ('my message' )
108
+ with self .assertRaises (asyncio .CancelledError ):
109
+ self .loop .run_until_complete (t )
110
+ self .assertEqual (t ._cancel_message , 'my message' )
111
+
112
+ def test_task_cancel_message_setter (self ):
113
+ async def coro ():
114
+ pass
115
+ t = self .new_task (self .loop , coro ())
116
+ t .cancel ('my message' )
117
+ t ._cancel_message = 'my new message'
118
+ self .assertEqual (t ._cancel_message , 'my new message' )
119
+
120
+ # Also check that the value is used for cancel().
121
+ with self .assertRaises (asyncio .CancelledError ):
122
+ self .loop .run_until_complete (t )
123
+ self .assertEqual (t ._cancel_message , 'my new message' )
124
+
100
125
def test_task_del_collect (self ):
101
126
class Evil :
102
127
def __del__ (self ):
You can’t perform that action at this time.
0 commit comments