From 75860ce754bce9e18e2594ba9cc98e270f39c13d Mon Sep 17 00:00:00 2001 From: sunby Date: Tue, 25 Feb 2025 10:30:08 +0800 Subject: [PATCH] fix ut Signed-off-by: sunby --- internal/core/unittest/test_expr.cpp | 42 +++++++++++++++++----------- 1 file changed, 26 insertions(+), 16 deletions(-) diff --git a/internal/core/unittest/test_expr.cpp b/internal/core/unittest/test_expr.cpp index ac0101c10bce7..13865f34c6c1e 100644 --- a/internal/core/unittest/test_expr.cpp +++ b/internal/core/unittest/test_expr.cpp @@ -16136,25 +16136,35 @@ TYPED_TEST(JsonIndexTestFixture, TestJsonIndexUnaryExpr) { final = ExecuteQueryExpr(plan, seg.get(), N, MAX_TIMESTAMP); EXPECT_EQ(final.count(), 0); + using DT = std::conditional_t< + std::is_same_v, + std::string_view, + typename TestFixture::DataType>; std::vector vals; - for (int i = 0; i < 10; ++i) { - using DT = std::conditional_t< - std::is_same_v, - std::string_view, - typename TestFixture::DataType>; + int expect_count = 10; + if constexpr (std::is_same_v) { proto::plan::GenericValue val; + val.set_bool_val(true); + vals.push_back(val); + val.set_bool_val(false); + vals.push_back(val); + expect_count = N; + } else { + for (int i = 0; i < expect_count; ++i) { + proto::plan::GenericValue val; - auto v = jsons[i].at
(this->json_path).value(); - if constexpr (std::is_same_v) { - val.set_bool_val(v); - } else if constexpr (std::is_same_v) { - val.set_int64_val(v); - } else if constexpr (std::is_same_v) { - val.set_float_val(v); - } else if constexpr (std::is_same_v) { - val.set_string_val(std::string(v)); + auto v = jsons[i].at
(this->json_path).value(); + if constexpr (std::is_same_v) { + val.set_int64_val(v); + } else if constexpr (std::is_same_v) { + val.set_float_val(v); + } else if constexpr (std::is_same_v) { + val.set_string_val(std::string(v)); + } else if constexpr (std::is_same_v) { + val.set_bool_val(i % 2 == 0); + } + vals.push_back(val); } - vals.push_back(val); } term_expr = std::make_shared( expr::ColumnInfo(json_fid, DataType::JSON, {this->json_path.substr(1)}), @@ -16163,5 +16173,5 @@ TYPED_TEST(JsonIndexTestFixture, TestJsonIndexUnaryExpr) { plan = std::make_shared(DEFAULT_PLANNODE_ID, term_expr); final = ExecuteQueryExpr(plan, seg.get(), N, MAX_TIMESTAMP); - EXPECT_EQ(final.count(), 10); + EXPECT_EQ(final.count(), expect_count); }