Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions vortex-array/src/arrays/validation_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ mod tests {
use vortex_dtype::DType;
use vortex_dtype::Nullability;
use vortex_dtype::PType;
use vortex_error::VortexError;
use vortex_vector::binaryview::BinaryView;

use crate::IntoArray;
Expand All @@ -37,6 +38,8 @@ mod tests {
let chunk1 = buffer![1i32, 2, 3].into_array();
let chunk2 = buffer![4i64, 5, 6].into_array();
let result = ChunkedArray::try_new(vec![chunk1, chunk2], PType::I32.into());

assert!(matches!(result, Err(VortexError::MismatchedTypes(_, _, _))));
assert!(result.is_err());
}

Expand All @@ -56,6 +59,8 @@ mod tests {
let validity = Validity::from_iter([true, false]); // Length 2, buffer is length 3.
let decimal_dtype = vortex_dtype::DecimalDType::new(10, 2);
let result = DecimalArray::try_new(buffer, decimal_dtype, validity);

assert!(matches!(result, Err(VortexError::InvalidArgument(_, _))));
assert!(result.is_err());
}

Expand All @@ -73,6 +78,8 @@ mod tests {
let buffer = Buffer::from_iter([1i32, 2, 3]);
let validity = Validity::from_iter([true, false]); // Length 2, buffer is length 3.
let result = PrimitiveArray::try_new(buffer, validity);

assert!(matches!(result, Err(VortexError::InvalidArgument(_, _))));
assert!(result.is_err());
}

Expand Down Expand Up @@ -101,6 +108,8 @@ mod tests {
DType::Binary(Nullability::NonNullable),
Validity::NonNullable,
);

assert!(matches!(result, Err(VortexError::InvalidArgument(_, _))));
assert!(result.is_err());
}

Expand All @@ -119,6 +128,8 @@ mod tests {
let elements = buffer![1i32, 2, 3].into_array();
let offsets = buffer![0i64, 2, 5].into_array(); // 5 > 3.
let result = ListArray::try_new(elements, offsets, Validity::NonNullable);

assert!(matches!(result, Err(VortexError::InvalidArgument(_, _))));
assert!(result.is_err());
}

Expand All @@ -135,6 +146,8 @@ mod tests {
// Invalid case: elements length doesn't match list_size * len.
let elements = buffer![1i32, 2, 3, 4, 5].into_array(); // 5 elements.
let result = FixedSizeListArray::try_new(elements, 2, Validity::NonNullable, 3); // Expects 2 * 3 = 6.

assert!(matches!(result, Err(VortexError::InvalidArgument(_, _))));
assert!(result.is_err());
}

Expand Down Expand Up @@ -171,6 +184,8 @@ mod tests {
DType::Binary(Nullability::NonNullable),
Validity::NonNullable,
);

assert!(matches!(result, Err(VortexError::InvalidArgument(_, _))));
assert!(result.is_err());
}

Expand All @@ -193,6 +208,8 @@ mod tests {
let fields = vec![field1, field2];
let names = ["a", "b"];
let result = StructArray::try_new(names.into(), fields, 3, Validity::NonNullable);

assert!(matches!(result, Err(VortexError::InvalidArgument(_, _))));
assert!(result.is_err());
}
}
Loading