in parquet/src/basic.rs [1500:1644]
fn test_logical_to_converted_type() {
let logical_none: Option<LogicalType> = None;
assert_eq!(ConvertedType::from(logical_none), ConvertedType::NONE);
assert_eq!(
ConvertedType::from(Some(LogicalType::Decimal {
precision: 20,
scale: 5
})),
ConvertedType::DECIMAL
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Bson)),
ConvertedType::BSON
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Json)),
ConvertedType::JSON
);
assert_eq!(
ConvertedType::from(Some(LogicalType::String)),
ConvertedType::UTF8
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Date)),
ConvertedType::DATE
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Time {
unit: TimeUnit::MILLIS(Default::default()),
is_adjusted_to_u_t_c: true,
})),
ConvertedType::TIME_MILLIS
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Time {
unit: TimeUnit::MICROS(Default::default()),
is_adjusted_to_u_t_c: true,
})),
ConvertedType::TIME_MICROS
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Time {
unit: TimeUnit::NANOS(Default::default()),
is_adjusted_to_u_t_c: false,
})),
ConvertedType::NONE
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Timestamp {
unit: TimeUnit::MILLIS(Default::default()),
is_adjusted_to_u_t_c: true,
})),
ConvertedType::TIMESTAMP_MILLIS
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Timestamp {
unit: TimeUnit::MICROS(Default::default()),
is_adjusted_to_u_t_c: false,
})),
ConvertedType::TIMESTAMP_MICROS
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Timestamp {
unit: TimeUnit::NANOS(Default::default()),
is_adjusted_to_u_t_c: false,
})),
ConvertedType::NONE
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 8,
is_signed: false
})),
ConvertedType::UINT_8
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 8,
is_signed: true
})),
ConvertedType::INT_8
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 16,
is_signed: false
})),
ConvertedType::UINT_16
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 16,
is_signed: true
})),
ConvertedType::INT_16
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 32,
is_signed: false
})),
ConvertedType::UINT_32
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 32,
is_signed: true
})),
ConvertedType::INT_32
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 64,
is_signed: false
})),
ConvertedType::UINT_64
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Integer {
bit_width: 64,
is_signed: true
})),
ConvertedType::INT_64
);
assert_eq!(
ConvertedType::from(Some(LogicalType::List)),
ConvertedType::LIST
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Map)),
ConvertedType::MAP
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Uuid)),
ConvertedType::NONE
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Enum)),
ConvertedType::ENUM
);
assert_eq!(
ConvertedType::from(Some(LogicalType::Unknown)),
ConvertedType::NONE
);
}