fixed bug introduced by overwritng 'body' as explanatory variable within try-block, which resultet in republish() receiving parsed body, instead of body as bytes
This commit is contained in:
parent
35542f994c
commit
0ab86206ec
@ -82,7 +82,7 @@ class PikaQueueManager(QueueManager):
|
||||
self.channel.queue_declare(input_queue, arguments=args, auto_delete=False, durable=True)
|
||||
self.channel.queue_declare(output_queue, arguments=args, auto_delete=False, durable=True)
|
||||
|
||||
def republish(self, body, n_current_attempts, frame):
|
||||
def republish(self, body: bytes, n_current_attempts, frame):
|
||||
self.channel.basic_publish(
|
||||
exchange="",
|
||||
routing_key=self._input_queue,
|
||||
@ -108,10 +108,8 @@ class PikaQueueManager(QueueManager):
|
||||
n_attempts = get_n_previous_attempts(properties) + 1
|
||||
|
||||
try:
|
||||
body = json.loads(body)
|
||||
response = visitor(body)
|
||||
response = json.dumps(response)
|
||||
self.channel.basic_publish("", self._output_queue, response.encode())
|
||||
response = json.dumps(visitor(json.loads(body))).encode()
|
||||
self.channel.basic_publish("", self._output_queue, response)
|
||||
self.channel.basic_ack(frame.delivery_tag)
|
||||
except ProcessingFailure:
|
||||
|
||||
|
||||
@ -76,10 +76,10 @@ class TestConsumer:
|
||||
pass
|
||||
|
||||
def callback(_):
|
||||
raise ProcessingFailure()
|
||||
raise ProcessingFailure
|
||||
|
||||
def reject_patch(*args, **kwargs):
|
||||
raise DebugError()
|
||||
raise DebugError
|
||||
|
||||
queue_manager.reject = reject_patch
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user