mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-05-28 19:00:39 +00:00
test: Fix VectorBuilder test and add Value data type test
This commit is contained in:
@@ -214,6 +214,66 @@ mod tests {
|
||||
assert_eq!(Value::Binary(bytes.clone()), Value::from(bytes));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_value_datatype() {
|
||||
assert_eq!(
|
||||
ConcreteDataType::boolean_datatype(),
|
||||
Value::Boolean(true).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::uint8_datatype(),
|
||||
Value::UInt8(u8::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::uint16_datatype(),
|
||||
Value::UInt16(u16::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::uint16_datatype(),
|
||||
Value::UInt16(u16::MAX).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::uint32_datatype(),
|
||||
Value::UInt32(u32::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::uint64_datatype(),
|
||||
Value::UInt64(u64::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::int8_datatype(),
|
||||
Value::Int8(i8::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::int16_datatype(),
|
||||
Value::Int16(i16::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::int32_datatype(),
|
||||
Value::Int32(i32::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::int64_datatype(),
|
||||
Value::Int64(i64::MIN).data_type()
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::float32_datatype(),
|
||||
Value::Float32(OrderedFloat(f32::MIN)).data_type(),
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::float64_datatype(),
|
||||
Value::Float64(OrderedFloat(f64::MIN)).data_type(),
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::string_datatype(),
|
||||
Value::String(StringBytes::from("hello")).data_type(),
|
||||
);
|
||||
assert_eq!(
|
||||
ConcreteDataType::binary_datatype(),
|
||||
Value::Binary(Bytes::from(b"world".as_slice())).data_type()
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_value_from_string() {
|
||||
let hello = "hello".to_string();
|
||||
|
||||
@@ -164,11 +164,11 @@ mod tests {
|
||||
|
||||
let mut builder = VectorBuilder::new(ConcreteDataType::$datatype());
|
||||
builder.push(&Value::Null);
|
||||
builder.push(&Value::Int32(100));
|
||||
builder.push(&Value::$Type(100));
|
||||
let vector = builder.finish();
|
||||
|
||||
assert!(vector.is_null(0));
|
||||
assert_eq!(Value::Int32(100), vector.get(1));
|
||||
assert_eq!(Value::$Type(100), vector.get(1));
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user