@@ -43,7 +43,7 @@ def test_worker_fills_internal_queue():
43
43
conn .send_message (QueueUrl = queue_url , MessageBody = message )
44
44
45
45
internal_queue = Queue ()
46
- worker = ReadWorker (queue_url , internal_queue , BATCHSIZE )
46
+ worker = ReadWorker (queue_url , internal_queue , BATCHSIZE , parent_id = 1 )
47
47
worker .read_message ()
48
48
49
49
packed_message = internal_queue .get (timeout = 1 )
@@ -78,7 +78,7 @@ def test_worker_fills_internal_queue_only_until_maximum_queue_size():
78
78
conn .send_message (QueueUrl = queue_url , MessageBody = message )
79
79
80
80
internal_queue = Queue (maxsize = 2 )
81
- worker = ReadWorker (queue_url , internal_queue , BATCHSIZE )
81
+ worker = ReadWorker (queue_url , internal_queue , BATCHSIZE , parent_id = 1 )
82
82
worker .read_message ()
83
83
84
84
# The internal queue should only have two messages on it
@@ -110,7 +110,7 @@ def test_worker_fills_internal_queue_from_celery_task():
110
110
conn .send_message (QueueUrl = queue_url , MessageBody = message )
111
111
112
112
internal_queue = Queue ()
113
- worker = ReadWorker (queue_url , internal_queue , BATCHSIZE )
113
+ worker = ReadWorker (queue_url , internal_queue , BATCHSIZE , parent_id = 1 )
114
114
worker .read_message ()
115
115
116
116
packed_message = internal_queue .get (timeout = 1 )
@@ -159,7 +159,7 @@ def test_worker_processes_tasks_from_internal_queue():
159
159
)
160
160
161
161
# Process message
162
- worker = ProcessWorker (internal_queue , INTERVAL )
162
+ worker = ProcessWorker (internal_queue , INTERVAL , parent_id = 1 )
163
163
worker .process_message ()
164
164
165
165
task_results .should .equal (['Test message' ])
@@ -203,7 +203,7 @@ def test_worker_fills_internal_queue_and_respects_visibility_timeouts():
203
203
204
204
# Run Reader
205
205
internal_queue = Queue (maxsize = 1 )
206
- worker = ReadWorker (queue_url , internal_queue , BATCHSIZE )
206
+ worker = ReadWorker (queue_url , internal_queue , BATCHSIZE , parent_id = 1 )
207
207
worker .read_message ()
208
208
209
209
# Check log messages
@@ -251,7 +251,7 @@ def test_worker_processes_tasks_and_logs_correctly():
251
251
)
252
252
253
253
# Process message
254
- worker = ProcessWorker (internal_queue , INTERVAL )
254
+ worker = ProcessWorker (internal_queue , INTERVAL , parent_id = 1 )
255
255
worker .process_message ()
256
256
257
257
# Check output
@@ -301,7 +301,7 @@ def test_worker_processes_tasks_and_logs_warning_correctly():
301
301
)
302
302
303
303
# Process message
304
- worker = ProcessWorker (internal_queue , INTERVAL )
304
+ worker = ProcessWorker (internal_queue , INTERVAL , parent_id = 1 )
305
305
worker .process_message ()
306
306
307
307
# Check output
@@ -314,7 +314,7 @@ def test_worker_processes_tasks_and_logs_warning_correctly():
314
314
logger .handlers [0 ].messages ['error' ][0 ].lower ().should .contain (
315
315
msg1 .lower ())
316
316
msg2 = (
317
- 'raise ValueError( "Need to be given basestring, was given '
317
+ '"Need to be given basestring, was given '
318
318
'{}".format(message))\n ValueError: Need to be given basestring, '
319
319
'was given 23'
320
320
) # noqa
@@ -329,7 +329,7 @@ def test_worker_processes_empty_queue():
329
329
"""
330
330
internal_queue = Queue ()
331
331
332
- worker = ProcessWorker (internal_queue , INTERVAL )
332
+ worker = ProcessWorker (internal_queue , INTERVAL , parent_id = 1 )
333
333
worker .process_message ()
334
334
335
335
@@ -338,9 +338,9 @@ def test_parent_process_death(os):
338
338
"""
339
339
Test worker processes recognize parent process death
340
340
"""
341
- os .getppid .return_value = 1
341
+ os .getppid .return_value = 123
342
342
343
- worker = BaseWorker ()
343
+ worker = BaseWorker (parent_id = 1 )
344
344
worker .parent_is_alive ().should .be .false
345
345
346
346
@@ -351,7 +351,7 @@ def test_parent_process_alive(os):
351
351
"""
352
352
os .getppid .return_value = 1234
353
353
354
- worker = BaseWorker ()
354
+ worker = BaseWorker (parent_id = 1234 )
355
355
worker .parent_is_alive ().should .be .true
356
356
357
357
@@ -366,14 +366,14 @@ def test_read_worker_with_parent_process_alive_and_should_not_exit(os):
366
366
queue_url = conn .create_queue (QueueName = "tester" )['QueueUrl' ]
367
367
368
368
# Setup PPID
369
- os .getppid .return_value = 1234
369
+ os .getppid .return_value = 1
370
370
371
371
# Setup dummy read_message
372
372
def read_message ():
373
373
raise Exception ("Called" )
374
374
375
375
# When I have a parent process, and shutdown is not set
376
- worker = ReadWorker (queue_url , "foo" , BATCHSIZE )
376
+ worker = ReadWorker (queue_url , "foo" , BATCHSIZE , parent_id = 1 )
377
377
worker .read_message = read_message
378
378
379
379
# Then read_message() is reached
@@ -397,7 +397,7 @@ def test_read_worker_with_parent_process_alive_and_should_exit(os):
397
397
q = Queue (1 )
398
398
399
399
# When I have a parent process, and shutdown is set
400
- worker = ReadWorker (queue_url , q , BATCHSIZE )
400
+ worker = ReadWorker (queue_url , q , BATCHSIZE , parent_id = 1 )
401
401
worker .read_message = Mock ()
402
402
worker .shutdown ()
403
403
@@ -416,13 +416,13 @@ def test_read_worker_with_parent_process_dead_and_should_not_exit(os):
416
416
queue_url = conn .create_queue (QueueName = "tester" )['QueueUrl' ]
417
417
418
418
# Setup PPID
419
- os .getppid .return_value = 1
419
+ os .getppid .return_value = 123
420
420
421
421
# Setup internal queue
422
422
q = Queue (1 )
423
423
424
424
# When I have no parent process, and shutdown is not set
425
- worker = ReadWorker (queue_url , q , BATCHSIZE )
425
+ worker = ReadWorker (queue_url , q , BATCHSIZE , parent_id = 1 )
426
426
worker .read_message = Mock ()
427
427
428
428
# Then I return from run()
@@ -437,14 +437,14 @@ def test_process_worker_with_parent_process_alive_and_should_not_exit(os):
437
437
is not set
438
438
"""
439
439
# Setup PPID
440
- os .getppid .return_value = 1234
440
+ os .getppid .return_value = 1
441
441
442
442
# Setup dummy read_message
443
443
def process_message ():
444
444
raise Exception ("Called" )
445
445
446
446
# When I have a parent process, and shutdown is not set
447
- worker = ProcessWorker ("foo" , INTERVAL )
447
+ worker = ProcessWorker ("foo" , INTERVAL , parent_id = 1 )
448
448
worker .process_message = process_message
449
449
450
450
# Then process_message() is reached
@@ -461,7 +461,7 @@ def test_process_worker_with_parent_process_dead_and_should_not_exit(os):
461
461
os .getppid .return_value = 1
462
462
463
463
# When I have no parent process, and shutdown is not set
464
- worker = ProcessWorker ("foo" , INTERVAL )
464
+ worker = ProcessWorker ("foo" , INTERVAL , parent_id = 1 )
465
465
worker .process_message = Mock ()
466
466
467
467
# Then I return from run()
@@ -478,7 +478,7 @@ def test_process_worker_with_parent_process_alive_and_should_exit(os):
478
478
os .getppid .return_value = 1234
479
479
480
480
# When I have a parent process, and shutdown is set
481
- worker = ProcessWorker ("foo" , INTERVAL )
481
+ worker = ProcessWorker ("foo" , INTERVAL , parent_id = 1 )
482
482
worker .process_message = Mock ()
483
483
worker .shutdown ()
484
484
@@ -487,10 +487,14 @@ def test_process_worker_with_parent_process_alive_and_should_exit(os):
487
487
488
488
489
489
@mock_sqs
490
- def test_worker_processes_shuts_down_after_processing_its_max_number_of_msgs ():
490
+ @patch ("pyqs.worker.os" )
491
+ def test_worker_processes_shuts_down_after_processing_its_max_number_of_msgs (
492
+ os ):
491
493
"""
492
494
Test worker processes shutdown after processing maximum number of messages
493
495
"""
496
+ os .getppid .return_value = 1
497
+
494
498
# Setup SQS Queue
495
499
conn = boto3 .client ('sqs' , region_name = 'us-east-1' )
496
500
queue_url = conn .create_queue (QueueName = "tester" )['QueueUrl' ]
@@ -535,7 +539,7 @@ def test_worker_processes_shuts_down_after_processing_its_max_number_of_msgs():
535
539
)
536
540
537
541
# When I Process messages
538
- worker = ProcessWorker (internal_queue , INTERVAL )
542
+ worker = ProcessWorker (internal_queue , INTERVAL , parent_id = 1 )
539
543
worker ._messages_to_process_before_shutdown = 2
540
544
541
545
# Then I return from run()
@@ -584,7 +588,7 @@ def test_worker_processes_discard_tasks_that_exceed_their_visibility_timeout():
584
588
)
585
589
586
590
# When I process the message
587
- worker = ProcessWorker (internal_queue , INTERVAL )
591
+ worker = ProcessWorker (internal_queue , INTERVAL , parent_id = 1 )
588
592
worker .process_message ()
589
593
590
594
# Then I get an error about exceeding the visibility timeout
@@ -648,7 +652,7 @@ def sleep_and_queue(internal_queue):
648
652
thread .start ()
649
653
650
654
# When I Process messages
651
- worker = ProcessWorker (internal_queue , INTERVAL )
655
+ worker = ProcessWorker (internal_queue , INTERVAL , parent_id = 1 )
652
656
worker ._messages_to_process_before_shutdown = 2
653
657
654
658
# Then I return from run() after processing 2 messages
0 commit comments