Skip to content

Commit 54d7748

Browse files
committed
Merge remote-tracking branch 'origin/v5-search-broken' into cmd-parser-with-commands
2 parents 1673d06 + ea51f39 commit 54d7748

File tree

3 files changed

+45
-28
lines changed

3 files changed

+45
-28
lines changed

packages/client/lib/commands/XREAD.spec.ts

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,7 @@ describe('XREAD', () => {
101101
}),
102102
])
103103

104-
const arr = ['key', [{
105-
'id': id,
106-
'message': [
107-
'field',
108-
'value',
109-
]
110-
}]];
111-
104+
// FUTURE resp3 compatible
112105
const obj = Object.assign(Object.create(null), {
113106
'key': [{
114107
id: id,
@@ -122,7 +115,18 @@ describe('XREAD', () => {
122115
}]
123116
});
124117

125-
assert.deepStrictEqual(reply, arr);
118+
// v4 compatible
119+
const expected = [{
120+
name: 'key',
121+
messages: [{
122+
id: id,
123+
message: Object.assign(Object.create(null), {
124+
field: 'value'
125+
})
126+
}]
127+
}];
128+
129+
assert.deepStrictEqual(reply, expected);
126130
}, {
127131
client: GLOBAL.SERVERS.OPEN,
128132
cluster: GLOBAL.CLUSTERS.OPEN

packages/client/lib/commands/XREADGROUP.spec.ts

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -124,14 +124,8 @@ describe('XREADGROUP', () => {
124124
})
125125
]);
126126

127-
const arr = ['key', [{
128-
'id': id,
129-
'message': [
130-
'field',
131-
'value',
132-
]
133-
}]];
134127

128+
// FUTURE resp3 compatible
135129
const obj = Object.assign(Object.create(null), {
136130
'key': [{
137131
id: id,
@@ -145,7 +139,18 @@ describe('XREADGROUP', () => {
145139
}]
146140
});
147141

148-
assert.deepStrictEqual(readGroupReply, arr);
142+
// v4 compatible
143+
const expected = [{
144+
name: 'key',
145+
messages: [{
146+
id: id,
147+
message: Object.assign(Object.create(null), {
148+
field: 'value'
149+
})
150+
}]
151+
}];
152+
153+
assert.deepStrictEqual(readGroupReply, expected);
149154
}, {
150155
client: GLOBAL.SERVERS.OPEN,
151156
cluster: GLOBAL.CLUSTERS.OPEN

packages/client/lib/commands/generic-transformers.ts

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -553,11 +553,13 @@ export function transformStreamsMessagesReplyResp2(
553553
reply: UnwrapReply<StreamsMessagesRawReply2 | NullReply>,
554554
preserve?: any,
555555
typeMapping?: TypeMapping
556-
): MapReply<BlobStringReply | string, StreamMessagesReply> | NullReply {
556+
): StreamsMessagesReply | NullReply {
557+
// FUTURE: resposne type if resp3 was working, reverting to old v4 for now
558+
//: MapReply<BlobStringReply | string, StreamMessagesReply> | NullReply {
557559
if (reply === null) return null as unknown as NullReply;
558560

559561
switch (typeMapping? typeMapping[RESP_TYPES.MAP] : undefined) {
560-
/*
562+
/* FUTURE: a response type for when resp3 is working properly
561563
case Map: {
562564
const ret = new Map<string, StreamMessagesReply>();
563565
@@ -572,14 +574,6 @@ export function transformStreamsMessagesReplyResp2(
572574
573575
return ret as unknown as MapReply<string, StreamMessagesReply>;
574576
}
575-
*/
576-
/* work around for now */
577-
default:
578-
if (!typeMapping) {
579-
typeMapping = {};
580-
}
581-
// console.log("forcing map type map to array");
582-
// typeMapping[RESP_TYPES.MAP] = Array;
583577
case Array: {
584578
const ret: Array<BlobStringReply | StreamMessagesReply> = [];
585579
@@ -595,7 +589,6 @@ export function transformStreamsMessagesReplyResp2(
595589
596590
return ret as unknown as MapReply<string, StreamMessagesReply>;
597591
}
598-
/*
599592
default: {
600593
const ret: Record<string, StreamMessagesReply> = Object.create(null);
601594
@@ -611,6 +604,21 @@ export function transformStreamsMessagesReplyResp2(
611604
return ret as unknown as MapReply<string, StreamMessagesReply>;
612605
}
613606
*/
607+
// V4 compatible response type
608+
default: {
609+
const ret: StreamsMessagesReply = [];
610+
611+
for (let i=0; i < reply.length; i++) {
612+
const stream = reply[i] as unknown as UnwrapReply<StreamMessagesRawReply>;
613+
614+
ret.push({
615+
name: stream[0],
616+
messages: transformStreamMessagesReply(stream[1])
617+
});
618+
}
619+
620+
return ret;
621+
}
614622
}
615623
}
616624

0 commit comments

Comments
 (0)