Skip to content

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

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)#136
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:sciml-testing-rollout

Conversation

@ChrisRackauckas-Claude

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

Copy link
Copy Markdown
Contributor

Converts test/runtests.jl to the SciMLTesting v1.2 run_tests dispatcher (folder model).

  • Core (the three parser test files: test_julia_parser.jl, test_antlr_parser.jl, test_error_messages.jl) runs in the main test env via the core thunk. These files stay at the top level and reference test/testfiles/*.bmo via dirname(dirname(pathof(BaseModelica))), so the moves do not affect data-file resolution.
  • The NoPre group (Aqua + JET) moves into test/NoPre/ (renamed from test/nopre/), carrying its sub-env Project.toml. qa.jl and test_jet.jl move from the top level into test/NoPre/.
  • NoPre stays an explicit-args thunk rather than a folder-discovery group: its isempty(VERSION.prerelease) guard (skip Aqua/JET, env activation included, on a prerelease/pre Julia) cannot be expressed by folder discovery, which would run JET on prerelease builds.
  • "All" is curated to Core only, and "Quality" is kept as an umbrella alias for NoPre — exactly matching the original GROUP dispatch (All/Core -> parser tests; NoPre/Quality -> guarded Aqua+JET; All never ran NoPre).
  • Deps: added SciMLTesting to the root [extras]/[targets].test/[compat] and to test/NoPre/Project.toml; widened SafeTestsets compat to "0.1, 1"; added a relative [sources] for BaseModelica in the NoPre sub-env. Pkg is retained (the NoPre thunk does its own activate/develop/instantiate inside the version guard). test/test_groups.toml unchanged.

Verified locally (Pkg.test, Julia 1.11): GROUP=Core passes (Julia Parser 75/75, ANTLR Parser 138/138, Error Message 25/25); GROUP=NoPre passes (Quality Assurance/Aqua 10/10, JET 1/1, exercising the sub-env activation path). A stubbed-body dispatch test confirms per-GROUP firing matches the original: All->Core, Core->Core, NoPre->NoPre, Quality->NoPre.

Ignore until reviewed by @ChrisRackauckas.

Convert test/runtests.jl to the SciMLTesting run_tests dispatcher. Core (the
three parser test files) runs in the main test env. The NoPre group (Aqua + JET)
moves into test/NoPre/ with its sub-env Project.toml.

NoPre stays an explicit-args thunk rather than a folder-discovery group because
its `isempty(VERSION.prerelease)` guard (skip Aqua/JET on prerelease Julia, env
activation included) cannot be expressed by folder discovery. "All" is curated to
Core only, and "Quality" is kept as an umbrella alias for NoPre, matching the
original GROUP dispatch exactly.

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 Adopt SciMLTesting 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 0df25a5 into SciML:main Jun 14, 2026
10 of 12 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