4242 MessageContentTooLarge ,
4343 OperationTimeoutError
4444)
45- from devtools_testutils import AzureMgmtTestCase , CachedResourceGroupPreparer
45+ from devtools_testutils import AzureMgmtTestCase , CachedResourceGroupPreparer , AzureTestCase
4646from servicebus_preparer import CachedServiceBusNamespacePreparer , CachedServiceBusQueuePreparer , ServiceBusQueuePreparer
4747from utilities import get_logger , print_message , sleep_until_expired
48- from mocks_async import MockReceivedMessage
48+ from mocks_async import MockReceivedMessage , MockReceiver
4949
5050_logger = get_logger (logging .DEBUG )
5151
@@ -1145,7 +1145,7 @@ async def test_queue_message_settle_through_mgmt_link_due_to_broken_receiver_lin
11451145 assert len (messages ) == 1
11461146 await receiver .complete_message (messages [0 ])
11471147
1148- @pytest . mark . asyncio
1148+ @AzureTestCase . await_prepared_test
11491149 async def test_async_queue_mock_auto_lock_renew_callback (self ):
11501150 results = []
11511151 errors = []
@@ -1154,11 +1154,16 @@ async def callback_mock(renewable, error):
11541154 if error :
11551155 errors .append (error )
11561156
1157+ receiver = MockReceiver ()
11571158 auto_lock_renew = AutoLockRenewer ()
1158- auto_lock_renew ._renew_period = 1 # So we can run the test fast.
1159- async with auto_lock_renew : # Check that it is called when the object expires for any reason (silent renew failure)
1159+ with pytest .raises (TypeError ):
1160+ auto_lock_renew .register (receiver , renewable = Exception ()) # an arbitrary invalid type.
1161+
1162+ auto_lock_renew = AutoLockRenewer ()
1163+ auto_lock_renew ._renew_period = 1 # So we can run the test fast.
1164+ async with auto_lock_renew : # Check that it is called when the object expires for any reason (silent renew failure)
11601165 message = MockReceivedMessage (prevent_renew_lock = True )
1161- auto_lock_renew .register (renewable = message , on_lock_renew_failure = callback_mock )
1166+ auto_lock_renew .register (receiver , renewable = message , on_lock_renew_failure = callback_mock )
11621167 await asyncio .sleep (3 )
11631168 assert len (results ) == 1 and results [- 1 ]._lock_expired == True
11641169 assert not errors
@@ -1167,8 +1172,8 @@ async def callback_mock(renewable, error):
11671172 del errors [:]
11681173 auto_lock_renew = AutoLockRenewer ()
11691174 auto_lock_renew ._renew_period = 1
1170- async with auto_lock_renew : # Check that in normal operation it does not get called
1171- auto_lock_renew .register (renewable = MockReceivedMessage (), on_lock_renew_failure = callback_mock )
1175+ async with auto_lock_renew : # Check that in normal operation it does not get called
1176+ auto_lock_renew .register (receiver , renewable = MockReceivedMessage (), on_lock_renew_failure = callback_mock )
11721177 await asyncio .sleep (3 )
11731178 assert not results
11741179 assert not errors
@@ -1177,9 +1182,9 @@ async def callback_mock(renewable, error):
11771182 del errors [:]
11781183 auto_lock_renew = AutoLockRenewer ()
11791184 auto_lock_renew ._renew_period = 1
1180- async with auto_lock_renew : # Check that when a message is settled, it will not get called even after expiry
1185+ async with auto_lock_renew : # Check that when a message is settled, it will not get called even after expiry
11811186 message = MockReceivedMessage (prevent_renew_lock = True )
1182- auto_lock_renew .register (renewable = message , on_lock_renew_failure = callback_mock )
1187+ auto_lock_renew .register (receiver , renewable = message , on_lock_renew_failure = callback_mock )
11831188 message ._settled = True
11841189 await asyncio .sleep (3 )
11851190 assert not results
@@ -1191,7 +1196,7 @@ async def callback_mock(renewable, error):
11911196 auto_lock_renew ._renew_period = 1
11921197 async with auto_lock_renew : # Check that it is called when there is an overt renew failure
11931198 message = MockReceivedMessage (exception_on_renew_lock = True )
1194- auto_lock_renew .register (renewable = message , on_lock_renew_failure = callback_mock )
1199+ auto_lock_renew .register (receiver , renewable = message , on_lock_renew_failure = callback_mock )
11951200 await asyncio .sleep (3 )
11961201 assert len (results ) == 1 and results [- 1 ]._lock_expired == True
11971202 assert errors [- 1 ]
@@ -1200,9 +1205,9 @@ async def callback_mock(renewable, error):
12001205 del errors [:]
12011206 auto_lock_renew = AutoLockRenewer ()
12021207 auto_lock_renew ._renew_period = 1
1203- async with auto_lock_renew : # Check that it is not called when the renewer is shutdown
1208+ async with auto_lock_renew : # Check that it is not called when the renewer is shutdown
12041209 message = MockReceivedMessage (prevent_renew_lock = True )
1205- auto_lock_renew .register (renewable = message , on_lock_renew_failure = callback_mock )
1210+ auto_lock_renew .register (receiver , renewable = message , on_lock_renew_failure = callback_mock )
12061211 await auto_lock_renew .close ()
12071212 await asyncio .sleep (3 )
12081213 assert not results
@@ -1212,35 +1217,35 @@ async def callback_mock(renewable, error):
12121217 del errors [:]
12131218 auto_lock_renew = AutoLockRenewer ()
12141219 auto_lock_renew ._renew_period = 1
1215- async with auto_lock_renew : # Check that it is not called when the receiver is shutdown
1220+ async with auto_lock_renew : # Check that it is not called when the receiver is shutdown
12161221 message = MockReceivedMessage (prevent_renew_lock = True )
1217- auto_lock_renew .register (renewable = message , on_lock_renew_failure = callback_mock )
1222+ auto_lock_renew .register (receiver , renewable = message , on_lock_renew_failure = callback_mock )
12181223 message ._receiver ._running = False
12191224 await asyncio .sleep (3 )
12201225 assert not results
12211226 assert not errors
12221227
1223-
1224- @pytest .mark .asyncio
1228+ @AzureTestCase .await_prepared_test
12251229 async def test_async_queue_mock_no_reusing_auto_lock_renew (self ):
12261230 auto_lock_renew = AutoLockRenewer ()
12271231 auto_lock_renew ._renew_period = 1
12281232
1233+ receiver = MockReceiver ()
12291234 async with auto_lock_renew :
1230- auto_lock_renew .register (renewable = MockReceivedMessage ())
1235+ auto_lock_renew .register (receiver , renewable = MockReceivedMessage ())
12311236 await asyncio .sleep (3 )
12321237
12331238 with pytest .raises (ServiceBusError ):
12341239 async with auto_lock_renew :
12351240 pass
12361241
12371242 with pytest .raises (ServiceBusError ):
1238- auto_lock_renew .register (renewable = MockReceivedMessage ())
1243+ auto_lock_renew .register (receiver , renewable = MockReceivedMessage ())
12391244
12401245 auto_lock_renew = AutoLockRenewer ()
12411246 auto_lock_renew ._renew_period = 1
12421247
1243- auto_lock_renew .register (renewable = MockReceivedMessage ())
1248+ auto_lock_renew .register (receiver , renewable = MockReceivedMessage ())
12441249 time .sleep (3 )
12451250
12461251 await auto_lock_renew .close ()
@@ -1250,7 +1255,7 @@ async def test_async_queue_mock_no_reusing_auto_lock_renew(self):
12501255 pass
12511256
12521257 with pytest .raises (ServiceBusError ):
1253- auto_lock_renew .register (renewable = MockReceivedMessage ())
1258+ auto_lock_renew .register (receiver , renewable = MockReceivedMessage ())
12541259
12551260 @pytest .mark .liveTest
12561261 @pytest .mark .live_test_only
0 commit comments