diff --git a/src/main/java/redis/clients/jedis/search/querybuilder/Values.java b/src/main/java/redis/clients/jedis/search/querybuilder/Values.java index 67256f2359..7b4971be19 100644 --- a/src/main/java/redis/clients/jedis/search/querybuilder/Values.java +++ b/src/main/java/redis/clients/jedis/search/querybuilder/Values.java @@ -41,10 +41,14 @@ public static RangeValue between(int from, int to) { return new LongRangeValue(from, to); } + // TODO: change to simpler [d] available since RedisStack 7.4.0-rc1; + // currently kept for backward compatibility public static RangeValue eq(double d) { return new DoubleRangeValue(d, d); } + // TODO: change to simpler [i] available since RedisStack 7.4.0-rc1; + // currently kept for backward compatibility public static RangeValue eq(int i) { return new LongRangeValue(i, i); } diff --git a/src/test/java/redis/clients/jedis/modules/search/SearchTest.java b/src/test/java/redis/clients/jedis/modules/search/SearchTest.java index 1bc6cb345d..7307e621c8 100644 --- a/src/test/java/redis/clients/jedis/modules/search/SearchTest.java +++ b/src/test/java/redis/clients/jedis/modules/search/SearchTest.java @@ -412,6 +412,9 @@ public void testQueryParams() { Query query = new Query("@numval:[$min $max]").addParam("min", 1).addParam("max", 2).dialect(2); assertEquals(2, client.ftSearch(index, query).getTotalResults()); + + query = new Query("@numval:[$eq]").addParam("eq", 2).dialect(5); + assertEquals(1, client.ftSearch(index, query).getTotalResults()); } @Test @@ -532,6 +535,14 @@ public void testJsonWithAlias() { res = client.ftSearch(index, new Query("@num:[0 10]")); assertEquals(1, res.getTotalResults()); assertEquals("king:2", res.getDocuments().get(0).getId()); + + res = client.ftSearch(index, new Query("@num:[42 42]")); + assertEquals(1, res.getTotalResults()); + assertEquals("king:1", res.getDocuments().get(0).getId()); + + res = client.ftSearch(index, new Query("@num:[42]").dialect(5)); + assertEquals(1, res.getTotalResults()); + assertEquals("king:1", res.getDocuments().get(0).getId()); } @Test @@ -773,6 +784,7 @@ public void getTagField() { assertEquals(1, client.ftSearch(index, new Query("@category:{yellow}")).getTotalResults()); assertEquals(0, client.ftSearch(index, new Query("@category:{purple}")).getTotalResults()); assertEquals(1, client.ftSearch(index, new Query("@category:{orange\\;purple}")).getTotalResults()); + assertEquals(1, client.ftSearch(index, new Query("@category:{orange;purple}").dialect(5)).getTotalResults()); assertEquals(4, client.ftSearch(index, new Query("hello")).getTotalResults()); assertEquals(new HashSet<>(Arrays.asList("red", "blue", "green", "yellow", "orange;purple")), @@ -814,6 +826,7 @@ public void testGetTagFieldWithNonDefaultSeparator() { assertEquals(1, client.ftSearch(index, new Query("hello @category:{yellow}")).getTotalResults()); assertEquals(0, client.ftSearch(index, new Query("@category:{purple}")).getTotalResults()); assertEquals(1, client.ftSearch(index, new Query("@category:{orange\\,purple}")).getTotalResults()); + assertEquals(1, client.ftSearch(index, new Query("@category:{orange,purple}").dialect(5)).getTotalResults()); assertEquals(4, client.ftSearch(index, new Query("hello")).getTotalResults()); assertEquals(new HashSet<>(Arrays.asList("red", "blue", "green", "yellow", "orange,purple")), diff --git a/src/test/java/redis/clients/jedis/modules/search/SearchWithParamsTest.java b/src/test/java/redis/clients/jedis/modules/search/SearchWithParamsTest.java index 897da8eece..dff74f8465 100644 --- a/src/test/java/redis/clients/jedis/modules/search/SearchWithParamsTest.java +++ b/src/test/java/redis/clients/jedis/modules/search/SearchWithParamsTest.java @@ -517,6 +517,9 @@ public void testQueryParams() { assertEquals(2, client.ftSearch(index, "@numval:[$min $max]", FTSearchParams.searchParams().params(paramValues) .dialect(2)).getTotalResults()); + + assertEquals(1, client.ftSearch(index, "@numval:[$eq]", + FTSearchParams.searchParams().addParam("eq", 2).dialect(5)).getTotalResults()); } @Test @@ -574,6 +577,14 @@ public void testJsonWithAlias() { res = client.ftSearch(index, "@num:[0 10]"); assertEquals(1, res.getTotalResults()); assertEquals("king:2", res.getDocuments().get(0).getId()); + + res = client.ftSearch(index, "@num:[42 42]", FTSearchParams.searchParams()); + assertEquals(1, res.getTotalResults()); + assertEquals("king:1", res.getDocuments().get(0).getId()); + + res = client.ftSearch(index, "@num:[42]", FTSearchParams.searchParams().dialect(5)); + assertEquals(1, res.getTotalResults()); + assertEquals("king:1", res.getDocuments().get(0).getId()); } @Test @@ -777,6 +788,8 @@ public void getTagField() { assertEquals(1, client.ftSearch(index, "@category:{yellow}").getTotalResults()); assertEquals(0, client.ftSearch(index, "@category:{purple}").getTotalResults()); assertEquals(1, client.ftSearch(index, "@category:{orange\\;purple}").getTotalResults()); + assertEquals(1, client.ftSearch(index, "@category:{orange;purple}", + FTSearchParams.searchParams().dialect(5)).getTotalResults()); assertEquals(4, client.ftSearch(index, "hello").getTotalResults()); assertEquals(new HashSet<>(Arrays.asList("red", "blue", "green", "yellow", "orange;purple")), @@ -816,6 +829,8 @@ public void testGetTagFieldWithNonDefaultSeparator() { assertEquals(1, client.ftSearch(index, "hello @category:{yellow}").getTotalResults()); assertEquals(0, client.ftSearch(index, "@category:{purple}").getTotalResults()); assertEquals(1, client.ftSearch(index, "@category:{orange\\,purple}").getTotalResults()); + assertEquals(1, client.ftSearch(index, "@category:{orange,purple}", + FTSearchParams.searchParams().dialect(5)).getTotalResults()); assertEquals(4, client.ftSearch(index, "hello").getTotalResults()); assertEquals(new HashSet<>(Arrays.asList("red", "blue", "green", "yellow", "orange,purple")),