Skip to content

Commit fe70d44

Browse files
authored
Implement set(double) in NestedMultiOutput #1486
NestedMultiOutput does not implement CommandOutput.set(double number) which causes problem with RediSearch FT.INFO command
1 parent dabd8b2 commit fe70d44

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

src/main/java/io/lettuce/core/output/NestedMultiOutput.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
* @param <V> Value type.
3333
* @author Will Glozer
3434
* @author Mark Paluch
35+
* @author Julien Ruaux
3536
*/
3637
public class NestedMultiOutput<K, V> extends CommandOutput<K, V, List<Object>> {
3738

@@ -57,6 +58,16 @@ public void set(long integer) {
5758
output.add(integer);
5859
}
5960

61+
@Override
62+
public void set(double number) {
63+
64+
if (!initialized) {
65+
output = new ArrayList<>();
66+
}
67+
68+
output.add(number);
69+
}
70+
6071
@Override
6172
public void set(ByteBuffer bytes) {
6273

src/test/java/io/lettuce/core/output/NestedMultiOutputUnitTests.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,15 @@ void nestedMultiError() {
3535
output.setError(StandardCharsets.US_ASCII.encode("Oops!"));
3636
assertThat(output.getError()).isNotNull();
3737
}
38+
39+
@Test
40+
void nestedMultiDouble() {
41+
NestedMultiOutput<String, String> output = new NestedMultiOutput<>(StringCodec.UTF8);
42+
double value = 123.456;
43+
output.set(value);
44+
assertThat(output.get()).isNotNull();
45+
assertThat(output.get()).size().isEqualTo(1);
46+
assertThat(output.get().get(0)).isEqualTo(value);
47+
}
48+
3849
}

0 commit comments

Comments
 (0)