Skip to content

Commit 59534bc

Browse files
committed
choose the proper array element to decode the message
1 parent 54caece commit 59534bc

File tree

3 files changed

+39
-29
lines changed

3 files changed

+39
-29
lines changed

src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/RedisReceiverTest.php

+32-24
Original file line numberDiff line numberDiff line change
@@ -64,12 +64,14 @@ public function redisEnvelopeProvider(): \Generator
6464
yield [
6565
[
6666
'id' => 1,
67-
'data' => json_encode([
68-
'body' => '{"message": "Hi"}',
69-
'headers' => [
70-
'type' => DummyMessage::class,
71-
],
72-
]),
67+
'data' => [
68+
'message' => json_encode([
69+
'body' => '{"message": "Hi"}',
70+
'headers' => [
71+
'type' => DummyMessage::class,
72+
],
73+
]),
74+
],
7375
],
7476
new DummyMessage('Hi'),
7577
new Serializer(
@@ -80,12 +82,14 @@ public function redisEnvelopeProvider(): \Generator
8082
yield [
8183
[
8284
'id' => 2,
83-
'data' => json_encode([
84-
'foo' => 'fooValue',
85-
'bar' => [
86-
'baz' => 'bazValue',
87-
],
88-
]),
85+
'data' => [
86+
'message' => json_encode([
87+
'foo' => 'fooValue',
88+
'bar' => [
89+
'baz' => 'bazValue',
90+
],
91+
]),
92+
],
8993
],
9094
(new ExternalMessage('fooValue'))->setBar(['baz' => 'bazValue']),
9195
new ExternalMessageSerializer(),
@@ -97,24 +101,28 @@ public function rejectedRedisEnvelopeProvider(): \Generator
97101
yield [
98102
[
99103
'id' => 1,
100-
'data' => json_encode([
101-
'body' => '{"message": "Hi"}',
102-
'headers' => [
103-
'type' => DummyMessage::class,
104-
],
105-
]),
104+
'data' => [
105+
'message' => json_encode([
106+
'body' => '{"message": "Hi"}',
107+
'headers' => [
108+
'type' => DummyMessage::class,
109+
],
110+
]),
111+
],
106112
],
107113
];
108114

109115
yield [
110116
[
111117
'id' => 2,
112-
'data' => json_encode([
113-
'foo' => 'fooValue',
114-
'bar' => [
115-
'baz' => 'bazValue',
116-
],
117-
]),
118+
'data' => [
119+
'message' => json_encode([
120+
'foo' => 'fooValue',
121+
'bar' => [
122+
'baz' => 'bazValue',
123+
],
124+
]),
125+
],
118126
],
119127
];
120128
}

src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/RedisTransportTest.php

+6-4
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,12 @@ public function testReceivesMessages()
3939

4040
$redisEnvelope = [
4141
'id' => '5',
42-
'data' => json_encode([
43-
'body' => 'body',
44-
'headers' => ['my' => 'header'],
45-
]),
42+
'data' => [
43+
'message' => json_encode([
44+
'body' => 'body',
45+
'headers' => ['my' => 'header'],
46+
]),
47+
],
4648
];
4749

4850
$serializer->method('decode')->with(['body' => 'body', 'headers' => ['my' => 'header']])->willReturn(new Envelope($decodedMessage));

src/Symfony/Component/Messenger/Bridge/Redis/Transport/RedisReceiver.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public function get(): iterable
4444
return [];
4545
}
4646

47-
$redisEnvelope = json_decode($message['data'], true);
47+
$redisEnvelope = json_decode($message['data']['message'] ?? '', true);
4848

4949
try {
5050
if (\array_key_exists('body', $redisEnvelope) && \array_key_exists('headers', $redisEnvelope)) {

0 commit comments

Comments
 (0)