Skip to content

Use SciMLTesting v1.2 (folder-based run_tests)#24

Merged
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:sciml-testing-rollout
Jun 14, 2026
Merged

Use SciMLTesting v1.2 (folder-based run_tests)#24
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:sciml-testing-rollout

Conversation

@ChrisRackauckas-Claude

@ChrisRackauckas-Claude ChrisRackauckas-Claude commented Jun 13, 2026

Copy link
Copy Markdown
Collaborator

Converts the test suite to the SciMLTesting v1.2 folder-discovery model: test/runtests.jl becomes using SciMLTesting; run_tests(), and the per-GROUP test set is derived from the folder layout + test/test_groups.toml.

Layout

  • Core = top-level test/*.jl. The inline Core testsets (previously all inside the GROUP != "QA" branch of runtests.jl) were extracted into self-contained files: kernel_functions.jl, collocation.jl, datainterpolations_ext.jl, interface.jl.
  • Shared kernel fixtures moved to test/shared/kernels_setup.jl, included by the Core files that use them.
  • QA = test/qa/qa.jl, run in the test/qa sub-env.

Deps

  • Added SciMLTesting + SafeTestsets to the root test deps ([extras]/[targets].test/[compat]) and to test/qa/Project.toml.
  • Dropped Pkg from the root test deps (the harness owns Pkg ops; no test/*.jl references it).
  • test/test_groups.toml unchanged.

Verification

  • Static: TOML.parsefile on every Project.toml + test_groups.toml; Meta.parseall on runtests.jl + all new files.
  • End-to-end on Julia 1.11: GROUP=Core → 77/77 pass (collocation 18, datainterpolations_ext 2, interface 25, kernel_functions 32); GROUP=QA → 12/12 pass.

The exact set of tests run under each GROUP value is unchanged. Supersedes the older v1.0.0 run_tests form on this branch.

Ignore until reviewed by @ChrisRackauckas.

Replace the hand-written GROUP dispatcher in test/runtests.jl with the
SciMLTesting v1.2 folder-discovery model (`using SciMLTesting; run_tests()`).

- Core = top-level test/*.jl. Extract the inline Core testsets into
  self-contained files: kernel_functions.jl, collocation.jl,
  datainterpolations_ext.jl, interface.jl.
- Shared kernel fixtures -> test/shared/kernels_setup.jl, included by the
  Core files that use them.
- QA = test/qa/qa.jl, run in the test/qa sub-env.
- Add SciMLTesting + SafeTestsets to the root test deps and test/qa/Project.toml;
  drop Pkg from the root test deps (the harness owns Pkg ops, no test/*.jl uses it).
- test_groups.toml unchanged.

Per-GROUP test set is unchanged. Verified statically (TOML + parse) and
end-to-end on Julia 1.11: GROUP=Core (77/77 pass), GROUP=QA (12/12 pass).

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ChrisRackauckas-Claude ChrisRackauckas-Claude changed the title Use SciMLTesting v1.0.0 (run_tests harness) Use SciMLTesting v1.2 (folder-based run_tests) Jun 14, 2026
@ChrisRackauckas ChrisRackauckas marked this pull request as ready for review June 14, 2026 23:54
@ChrisRackauckas ChrisRackauckas merged commit fc8775f into SciML:main Jun 14, 2026
15 of 17 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.

2 participants