Skip to content

Commit 516d322

Browse files
committed
Ugly hack for messagebus to return results [hack_messagebus_results]
1 parent a8ec47f commit 516d322

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

src/allocation/service_layer/messagebus.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,14 @@ def handle(
1111
event: events.Event,
1212
uow: unit_of_work.AbstractUnitOfWork,
1313
):
14+
results = []
1415
queue = [event]
1516
while queue:
1617
event = queue.pop(0)
1718
for handler in HANDLERS[type(event)]:
18-
handler(event, uow=uow)
19+
results.append(handler(event, uow=uow))
1920
queue.extend(uow.collect_new_events())
21+
return results
2022

2123

2224
HANDLERS = {

tests/unit/test_handlers.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,10 @@ def test_returns_allocation(self):
5353
messagebus.handle(
5454
events.BatchCreated("batch1", "COMPLICATED-LAMP", 100, None), uow
5555
)
56-
result = messagebus.handle(
56+
results = messagebus.handle(
5757
events.AllocationRequired("o1", "COMPLICATED-LAMP", 10), uow
5858
)
59-
assert result == "batch1"
59+
assert results.pop(0) == "batch1"
6060

6161
def test_errors_for_invalid_sku(self):
6262
uow = FakeUnitOfWork()

0 commit comments

Comments
 (0)