Skip to content

Conversation

icweaver
Copy link
Member

@icweaver icweaver commented Aug 5, 2025

Hey all, I've been noodling around with different test frameworks lately and have been liking TestItems.jl. Its filtering capabilities are pretty convenient, and I've found myself reaching for it when wanting to quickly test something in other PRs, e.g.,

julia> using TestItemRunner

julia> @run_package_tests filter = ti -> occursin( "aperture/circular", ti.name) verbose=true;
Test Summary:                            | Pass  Total  Time
Package                                  |   21     21  0.0s
  Photometry.jl/src/aperture/circular.jl |   21     21  0.0s
    aperture/circular: Apertures         |   13     13  0.0s
    aperture/circular: broadcasting      |    3      3  0.0s
    aperture/circular: CircularAperture  |    3      3  0.0s
    aperture/circular: CircularAnnulus   |    2      2  0.0s

I also like how they take a page out of Rust's book and allow for source code and tests to be located in the same file, but I know that's more a matter of personal taste

I'm not a VS Code user, but I've heard it's pretty nice for that too, which could potentially help to further reduce contributor friction

At any rate, I was wondering what folks thought about transitioning to this framework here, and if there are any trade-offs to consider

Thanks!

@icweaver icweaver changed the title Switch to TestItems.jl Investigate switching to TestItems.jl Aug 5, 2025
Copy link

codecov bot commented Aug 5, 2025

Codecov Report

❌ Patch coverage is 93.43434% with 13 lines in your changes missing coverage. Please review.
✅ Project coverage is 94.01%. Comparing base (fcc2e10) to head (0461fc5).
⚠️ Report is 21 commits behind head on main.

Files with missing lines Patch % Lines
src/aperture/Aperture.jl 93.97% 5 Missing ⚠️
src/aperture/overlap.jl 95.91% 2 Missing ⚠️
src/background/estimators.jl 91.30% 2 Missing ⚠️
src/detection/Detection.jl 88.23% 2 Missing ⚠️
src/aperture/plotting.jl 94.11% 1 Missing ⚠️
src/background/Background.jl 88.88% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #77      +/-   ##
==========================================
- Coverage   94.70%   94.01%   -0.70%     
==========================================
  Files          11       11              
  Lines         737      935     +198     
==========================================
+ Hits          698      879     +181     
- Misses         39       56      +17     
Flag Coverage Δ
unittests 94.01% <93.43%> (-0.70%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@icweaver icweaver marked this pull request as draft August 5, 2025 06:23
@icweaver
Copy link
Member Author

icweaver commented Aug 5, 2025

Ugh, Windows. Will take a look

Update: Welp, looks to be an inference issue specific to Julia v1.6. Side request, can we start dropping support for old Julia versions and swap to LTS (v1.10) instead 😅

I am curious though why this issue only shows itself when switching to this testing framework

@icweaver icweaver marked this pull request as ready for review October 1, 2025 10:43
@icweaver
Copy link
Member Author

icweaver commented Oct 1, 2025

Fixed a type instability I accidentally introduced. Seemed to do the trick (update: plus bumping oldest supported version to LTS).

Looks like the last thing is something like this for nightly julia-vscode/TestItemRunner.jl#114. I don't think this should hold up the PR, especially if we end up going with something like JuliaAstro/JuliaAstro.github.io#157, so will go ahead merge after other tests complete

@icweaver icweaver changed the title Investigate switching to TestItems.jl Switch to TestItems.jl Oct 1, 2025
@icweaver
Copy link
Member Author

icweaver commented Oct 2, 2025

codecov decrease looks to be mostly noise, will go ahead and merge

@icweaver icweaver merged commit dd248f7 into JuliaAstro:main Oct 2, 2025
11 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant