test(fs): cover recursive mkdir options-object decoding - #8309
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan includes up to 8 reviews per rolling hour; 2 remain after this review. 📝 WalkthroughWalkthroughAdds an end-to-end regression test for recursive ChangesmkdirSync options-object regression
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This localized test-only change adds coverage for recursive mkdir options-object handling without changing production behavior; no actionable merge-blocking risk remains after normal checks and review. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Adds an end-to-end regression test for the
fs.mkdirSync(path, { recursive: true })options-object crash fixed in #8204. Claude Code exercises this exact call during normal startup, while its--versionfast path exits before reaching it.Changes
mkdirSync.StringHeaderand attempted a roughly 2 GiB copy.Related issue
Follow-up to #8204; refs #8122.
Test plan
cargo build --releaseclean (not run; test-only change)cargo test --workspace --exclude perry-ui-ios --exclude perry-ui-tvos --exclude perry-ui-watchos --exclude perry-ui-gtk4 --exclude perry-ui-android --exclude perry-ui-windowspasses (not run)rustfmt --edition 2024 --check crates/perry/tests/issue_8122_fs_mkdir_options_object.rsgit diff --cached --checkPERRY_GC_VERIFY_EVACUATION=1:PASS, exit 0docs/src/(not applicable; no API or behavior change)The focused Cargo invocation was also attempted on Windows. It currently stops while compiling clean
mainbecausenative_stack_scan.rsreferences Unix-onlylibc::Dl_info/libc::dladdr; it does not reach this test. Workspace-widecargo fmtlikewise hits Windows path error 206, while the new file passes standalone rustfmt.Screenshots / output
Checklist
Summary by CodeRabbit
Bug Fixes
fs.mkdirSynccould crash when called with an options object containingrecursive: true.Tests