| 12 | }; |
| 13 | |
| 14 | TEST_F(CApiFlatTupleTest, GetValue) { |
| 15 | lbug_query_result result; |
| 16 | lbug_flat_tuple flatTuple; |
| 17 | lbug_state state; |
| 18 | auto connection = getConnection(); |
| 19 | state = lbug_connection_query(connection, |
| 20 | "MATCH (a:person) RETURN a.fName, a.age, a.height ORDER BY a.fName LIMIT 1", &result); |
| 21 | ASSERT_EQ(state, LbugSuccess); |
| 22 | ASSERT_TRUE(lbug_query_result_is_success(&result)); |
| 23 | state = lbug_query_result_get_next(&result, &flatTuple); |
| 24 | ASSERT_EQ(state, LbugSuccess); |
| 25 | lbug_value value; |
| 26 | ASSERT_EQ(lbug_flat_tuple_get_value(&flatTuple, 0, &value), LbugSuccess); |
| 27 | ASSERT_NE(value._value, nullptr); |
| 28 | auto valueCpp = static_cast<Value*>(value._value); |
| 29 | ASSERT_NE(valueCpp, nullptr); |
| 30 | ASSERT_EQ(valueCpp->getDataType().getLogicalTypeID(), LogicalTypeID::STRING); |
| 31 | ASSERT_EQ(valueCpp->getValue<std::string>(), "Alice"); |
| 32 | lbug_value_destroy(&value); |
| 33 | ASSERT_EQ(lbug_flat_tuple_get_value(&flatTuple, 1, &value), LbugSuccess); |
| 34 | ASSERT_NE(value._value, nullptr); |
| 35 | valueCpp = static_cast<Value*>(value._value); |
| 36 | ASSERT_NE(valueCpp, nullptr); |
| 37 | ASSERT_EQ(valueCpp->getDataType().getLogicalTypeID(), LogicalTypeID::INT64); |
| 38 | ASSERT_EQ(valueCpp->getValue<int64_t>(), 35); |
| 39 | lbug_value_destroy(&value); |
| 40 | ASSERT_EQ(lbug_flat_tuple_get_value(&flatTuple, 2, &value), LbugSuccess); |
| 41 | ASSERT_NE(value._value, nullptr); |
| 42 | valueCpp = static_cast<Value*>(value._value); |
| 43 | ASSERT_NE(valueCpp, nullptr); |
| 44 | ASSERT_EQ(valueCpp->getDataType().getLogicalTypeID(), LogicalTypeID::FLOAT); |
| 45 | ASSERT_FLOAT_EQ(valueCpp->getValue<float>(), 1.731); |
| 46 | lbug_value_destroy(&value); |
| 47 | ASSERT_EQ(lbug_flat_tuple_get_value(&flatTuple, 222, &value), LbugError); |
| 48 | lbug_flat_tuple_destroy(&flatTuple); |
| 49 | lbug_query_result_destroy(&result); |
| 50 | } |
| 51 | |
| 52 | TEST_F(CApiFlatTupleTest, ToString) { |
| 53 | lbug_query_result result; |
nothing calls this directly
no test coverage detected