Skip to content

Commit c6d5aae

Browse files
committed
Ugly hack for messagebus to return results [hack_messagebus_results]
1 parent 4b2000e commit c6d5aae

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
@@ -7,12 +7,14 @@
77

88

99
def handle(event: events.Event, uow: unit_of_work.AbstractUnitOfWork):
10+
results = []
1011
queue = [event]
1112
while queue:
1213
event = queue.pop(0)
1314
for handler in HANDLERS[type(event)]:
14-
handler(event, uow=uow)
15+
results.append(handler(event, uow=uow))
1516
queue.extend(uow.collect_new_events())
17+
return results
1618

1719

1820
HANDLERS = {

tests/unit/test_handlers.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,10 @@ def test_returns_allocation(self):
6060
messagebus.handle(
6161
events.BatchCreated("batch1", "COMPLICATED-LAMP", 100, None), uow
6262
)
63-
result = messagebus.handle(
63+
results = messagebus.handle(
6464
events.AllocationRequired("o1", "COMPLICATED-LAMP", 10), uow
6565
)
66-
assert result == "batch1"
66+
assert results.pop(0) == "batch1"
6767

6868

6969
def test_errors_for_invalid_sku(self):

0 commit comments

Comments
 (0)