solver_test_sources = files('linear.cpp', 'linear_overflow.cpp', 'seed.cpp', 'nonlinear.cpp', 'nonlinear_parity.cpp', 'strategies.cpp', 'nonconforming.cpp', 'continuation_controller.cpp', 'continuation_family.cpp', 'continuation_driver.cpp', 'continuation_settings.cpp', 'continuation_equilibrium.cpp', 'archive.cpp', 'virial.cpp') serif_solver_tests = executable( 'serif_solver_tests', solver_test_sources, dependencies: [serif_dep, catch2_dep, stroid_dep], include_directories: include_directories('../include'), build_rpath: mfem_runtime_prefix == '' ? '' : mfem_runtime_prefix / 'lib', ) # Complete seed regressions assemble real moving stars, including in debug builds. test('serif_solver_tests', serif_solver_tests, args: ['~[stellar_solve]~[ester]~[nonconforming_stellar_solve]'], suite: 'solver', timeout: 1800, is_parallel: false) # Keep the coupled hanging-node regression visible in the normal suite with its own budget. test('serif_nonconforming_stellar_tests', serif_solver_tests, args: ['[nonconforming_stellar_solve]'], suite: 'solver', timeout: 3600, is_parallel: false) # The archived validation study is an explicit long-running reproduction tool. ester_validation = executable( 'ester_validation', 'ester_validation.cpp', dependencies: [serif_dep, stroid_dep], include_directories: include_directories('../include'), build_rpath: mfem_runtime_prefix == '' ? '' : mfem_runtime_prefix / 'lib', ) # Exercise the shared acceptance loop without any finite-element backend. serif_core_solver_tests = executable( 'serif_core_solver_tests', 'backend_independent.cpp', dependencies: [serif_core_dep, catch2_dep], ) test('serif_core_solver_tests', serif_core_solver_tests, suite: 'solver', timeout: 30)