Add fuzz regression testing for ArrowReader
- Dominant language
- Swift
- Stars
- 32
- Forks
- 18
- Avg merge
- 19h 14m
- Merged PRs (30d)
- 2
Description
### Describe the enhancement requested
### Context
Follow-up from #177 / #176, suggested by @willtemperley during review: `validateFileData` and other malformed-input handling in `ArrowReader` should be tested against real fuzz regression data, not only hand-written edge cases.
### Proposal
Add fuzz regression files as test fixtures and assert that `ArrowReader.fromFile` / `readStreaming` never crash on them — regardless of whether they succeed or return `.failure(ArrowError)`.
### Open question
Where the fuzz corpus itself should come from is a separate decision (own files here, or an external source) and I'd rather get input on that before proposing a specific mechanism. Happy to do the work once that's settled.
cc @kou @willtemperley
Contributor guide
Research direction
Start by reading ArrowReader.validateFileData and the existing tests around ArrowReader.fromFile and readStreaming. Review the unresolved decision about whether fuzz regression files belong in the repository or come from an external source; done means the chosen fixtures exercise both entry points without crashes, whether they succeed or return ArrowError.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- data, testing
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100