-
Notifications
You must be signed in to change notification settings - Fork 750
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consolidate arrow ipc tests and increase coverage #3427
Conversation
.unwrap(); | ||
|
||
let mut reader = FileReader::try_new(file, None).unwrap(); | ||
verify_arrow_file(&testdata, version, path); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I consolidated the tests so the streams and file tests are in the same function, which both reduces code duplication as well as making it easier to audit which files were included in the test
let testdata = arrow_test_data(); | ||
let version = "0.17.1"; | ||
let paths = vec!["generated_union"]; | ||
paths.iter().for_each(|path| { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This used to be (partially) covered in arrow/tests/ipc.rs
"generated_datetime", | ||
"generated_custom_metadata", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was quite pleased to find that the reader/writer works for many more integration tests
}); | ||
} | ||
|
||
#[test] | ||
fn read_generated_streams_014() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the stream tests have been incorporated into the same test as the file tests (so I didn't have to audit two separate lists of files)
}); | ||
} | ||
|
||
#[test] | ||
fn read_and_rewrite_generated_streams_014() { | ||
fn write_0_1_7() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This used to be (partially) covered in arrow/tests/ipc.rs
@@ -1,61 +0,0 @@ | |||
// Licensed to the Apache Software Foundation (ASF) under one |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is now completely covered by arrow-integration-testing/tests/ipc_writer.rs
and arrow-integration-testing/tests/ipc_reader.rs
in a uniform manner
@@ -102,163 +95,119 @@ fn read_generated_be_files_should_work() { | |||
.unwrap(); | |||
|
|||
FileReader::try_new(file, None).unwrap(); | |||
|
|||
// While the the reader doesn't error but the values are not read correctly |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we file a ticket for this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will do
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would recommend filing tickets for the remaining failures, but looks good to me
"generated_map", | ||
// fails with | ||
// thread 'read_1_0_0_littleendian' panicked at 'assertion failed: `(left == right)` | ||
//"generated_map_non_canonical", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it might be worth a ticket for this test, it seems to fail in multiple places
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark runs are scheduled for baseline = e256e3d and contender = 81abc1a. 81abc1a is a master commit associated with this PR. Results will be available as each benchmark for each run completes. |
Which issue does this PR close?
re #3389
Rationale for this change
I want to ensure that the Arrow IPC writer had sufficient test coverage before I potentially messed around with it
What changes are included in this PR?
Are there any user-facing changes?
No this is all test changes