test: keep RPC coverage dir under runner tmpdir#7306
Conversation
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
✅ No Merge Conflicts DetectedThis PR currently has no conflicts with other open PRs. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
WalkthroughThe change modifies the Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 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 |
|
✅ Review complete (commit 62452f2) |
thepastaclaw
left a comment
There was a problem hiding this comment.
Code Review
Small, well-scoped fix moving the shared RPC coverage directory under the runner-managed tmpdir (created at test_runner.py:479) instead of the system tempdir. Lifecycle is correct: coverage.cleanup() at line 668 removes the subdirectory before the empty-tmpdir check at line 673, and RPCCoverage has no other callers. Both agents independently verified no regressions; nothing to flag.
Reviewed commit: 73d1bd5
73d1bd5 to
62452f2
Compare
thepastaclaw
left a comment
There was a problem hiding this comment.
Code Review
Small, well-scoped change: RPCCoverage's coverage dir is now created under the runner-managed tmpdir. Verified lifecycle is correct — tmpdir is created (line 479) before RPCCoverage(tmpdir) is constructed (line 601), and coverage.cleanup() (line 668) runs before the empty-tmpdir rmdir check (line 673). RPCCoverage has only this one call site, so the constructor signature change is safe.
Reviewed commit: 62452f2
|
Closing this as irrelevant/too speculative. The code path is inherited from upstream Bitcoin Core, and I don't have a Dash-specific reason strong enough to justify diverging from that backported test_runner behavior for a one-off coverage tempdir failure. |
Summary
Motivation
test_runner.py --coveragecurrently creates the shared RPC coveragedirectory directly under the system temp directory via
tempfile.mkdtemp(prefix="coverage").In CI this can leave the coverage lifecycle outside the runner-owned temp tree,
which matches #7273 where
/tmp/coverage*disappeared whilecoverage-enabled functional tests were still running.
Changes
tmpdirintoRPCCoverage.Validation
python3 -m py_compile test/functional/test_runner.pyRPCCoverage(tmpdir)creation/cleanup with a temporary parentdirectory.
ship.Fixes #7273.