Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Mechanical layout refactor: move 4 large inline
mod tests { ... }blocks out of their parent source files into siblingtests.rsfiles. Pure file reorganization — zero behavior change, zero test logic change, test count unchanged at 499.Continues the convention established by PR #21 (which split the per-arch SIMD backend tests). The remaining 4 files were the largest still carrying inline test modules.
Changes
src/frame.rssrc/frame/tests.rssrc/raw/bayer16.rssrc/raw/bayer16/tests.rssrc/raw/bayer.rssrc/raw/bayer/tests.rssrc/raw/types.rssrc/raw/types/tests.rsEach parent file now ends with the standard two-line declaration (e.g.
#[cfg(all(test, feature = "std"))] mod tests;), with the body verbatim in the sibling file (dedented one level,use super::*;retained). The original#[cfg]attribute style is preserved per-file (src/raw/types.rsuses bare#[cfg(test)]; the others use#[cfg(all(test, feature = "std"))]).Why now
src/frame.rswas 6,439 lines; the inline test block accounted for 24% of the file. Reviews of frame-layout changes had to scroll past a thousand-plus lines of test code.src/sinker/mixed/mod.rsalready use the sibling pattern — these 4 files were the last holdouts.Test plan
cargo test --lib: 499 pass, 0 fail (unchanged from before the split — pure layout refactor)cargo check --tests --libclean across host (aarch64-darwin), x86_64-unknown-freebsd, wasm32-unknown-unknownRUSTFLAGS="-Dwarnings" cargo clippy --lib --testsclean🤖 Generated with Claude Code