From bd95b4d6492fbcbdd69a75cd439788c765d00636 Mon Sep 17 00:00:00 2001 From: Oscar Dowson Date: Tue, 30 Jun 2026 15:48:48 +1200 Subject: [PATCH] Simplify run_tests in each test file --- test/algorithms/test_Chalmet.jl | 9 +++------ test/algorithms/test_Dichotomy.jl | 9 +++------ test/algorithms/test_DominguezRios.jl | 9 +++------ test/algorithms/test_EpsilonConstraint.jl | 9 +++------ test/algorithms/test_Hierarchical.jl | 9 +++------ test/algorithms/test_KirlikSayin.jl | 9 +++------ test/algorithms/test_Lexicographic.jl | 9 +++------ test/algorithms/test_RandomWeighting.jl | 9 +++------ test/algorithms/test_Sandwiching.jl | 9 +++------ test/algorithms/test_TambyVanderpooten.jl | 9 +++------ test/problems.jl | 12 +++++------- test/test_model.jl | 9 +++------ test/test_utilities.jl | 9 +++------ test/vOptLib.jl | 12 +++++------- 14 files changed, 46 insertions(+), 86 deletions(-) diff --git a/test/algorithms/test_Chalmet.jl b/test/algorithms/test_Chalmet.jl index 5bb1f66..018a00b 100644 --- a/test/algorithms/test_Chalmet.jl +++ b/test/algorithms/test_Chalmet.jl @@ -14,12 +14,9 @@ import MultiObjectiveAlgorithms: MOI include(joinpath(dirname(@__DIR__), "mock_optimizer.jl")) function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_Dichotomy.jl b/test/algorithms/test_Dichotomy.jl index f96e372..03a2ea9 100644 --- a/test/algorithms/test_Dichotomy.jl +++ b/test/algorithms/test_Dichotomy.jl @@ -15,12 +15,9 @@ import MultiObjectiveAlgorithms: MOI include(joinpath(dirname(@__DIR__), "mock_optimizer.jl")) function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_DominguezRios.jl b/test/algorithms/test_DominguezRios.jl index d0c9f92..39cc927 100644 --- a/test/algorithms/test_DominguezRios.jl +++ b/test/algorithms/test_DominguezRios.jl @@ -18,12 +18,9 @@ function run_tests() if Sys.WORD_SIZE == 32 return # Skip on 32-bit because HiGHS fails end - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_EpsilonConstraint.jl b/test/algorithms/test_EpsilonConstraint.jl index eaa2b85..8da7ad9 100644 --- a/test/algorithms/test_EpsilonConstraint.jl +++ b/test/algorithms/test_EpsilonConstraint.jl @@ -16,12 +16,9 @@ include(joinpath(dirname(@__DIR__), "mock_optimizer.jl")) include(joinpath(dirname(@__DIR__), "vOptLib.jl")) function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_Hierarchical.jl b/test/algorithms/test_Hierarchical.jl index c9330cb..d6bc742 100644 --- a/test/algorithms/test_Hierarchical.jl +++ b/test/algorithms/test_Hierarchical.jl @@ -12,12 +12,9 @@ import MultiObjectiveAlgorithms as MOA import MultiObjectiveAlgorithms: MOI function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_KirlikSayin.jl b/test/algorithms/test_KirlikSayin.jl index 1d7f521..d0d7bbc 100644 --- a/test/algorithms/test_KirlikSayin.jl +++ b/test/algorithms/test_KirlikSayin.jl @@ -16,12 +16,9 @@ include(joinpath(dirname(@__DIR__), "problems.jl")) include(joinpath(dirname(@__DIR__), "vOptLib.jl")) function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_Lexicographic.jl b/test/algorithms/test_Lexicographic.jl index 20b1d8c..6777e25 100644 --- a/test/algorithms/test_Lexicographic.jl +++ b/test/algorithms/test_Lexicographic.jl @@ -12,12 +12,9 @@ import MultiObjectiveAlgorithms as MOA import MultiObjectiveAlgorithms: MOI function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_RandomWeighting.jl b/test/algorithms/test_RandomWeighting.jl index ebc9ce4..b39af1a 100644 --- a/test/algorithms/test_RandomWeighting.jl +++ b/test/algorithms/test_RandomWeighting.jl @@ -14,12 +14,9 @@ import MultiObjectiveAlgorithms: MOI include(joinpath(dirname(@__DIR__), "mock_optimizer.jl")) function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_Sandwiching.jl b/test/algorithms/test_Sandwiching.jl index c5df61b..bcaa718 100644 --- a/test/algorithms/test_Sandwiching.jl +++ b/test/algorithms/test_Sandwiching.jl @@ -15,12 +15,9 @@ import Polyhedra include(joinpath(dirname(@__DIR__), "mock_optimizer.jl")) function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/algorithms/test_TambyVanderpooten.jl b/test/algorithms/test_TambyVanderpooten.jl index 6c3b1bd..675b63d 100644 --- a/test/algorithms/test_TambyVanderpooten.jl +++ b/test/algorithms/test_TambyVanderpooten.jl @@ -16,12 +16,9 @@ include(joinpath(dirname(@__DIR__), "problems.jl")) include(joinpath(dirname(@__DIR__), "vOptLib.jl")) function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/problems.jl b/test/problems.jl index b1a2776..6eca050 100644 --- a/test/problems.jl +++ b/test/problems.jl @@ -6,17 +6,15 @@ module Problems using Test + import MathOptInterface as MOI import MultiObjectiveAlgorithms as MOA function run_tests(model::MOI.ModelLike) - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - MOI.empty!(model) - getfield(@__MODULE__, name)(model) - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + MOI.empty!(model) + getfield(@__MODULE__, name)(model) end return end diff --git a/test/test_model.jl b/test/test_model.jl index 92978ba..86c0b27 100644 --- a/test/test_model.jl +++ b/test/test_model.jl @@ -12,12 +12,9 @@ import MultiObjectiveAlgorithms as MOA import MultiObjectiveAlgorithms: MOI function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/test_utilities.jl b/test/test_utilities.jl index c3bfabe..5710954 100644 --- a/test/test_utilities.jl +++ b/test/test_utilities.jl @@ -11,12 +11,9 @@ import MultiObjectiveAlgorithms as MOA import MultiObjectiveAlgorithms: MOI function run_tests() - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - getfield(@__MODULE__, name)() - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + getfield(@__MODULE__, name)() end return end diff --git a/test/vOptLib.jl b/test/vOptLib.jl index b43d224..822fbe6 100644 --- a/test/vOptLib.jl +++ b/test/vOptLib.jl @@ -6,18 +6,16 @@ module vOptLib using Test + import JSON import MathOptInterface as MOI import MultiObjectiveAlgorithms as MOA function run_tests(model::MOI.ModelLike; kwargs...) - for name in names(@__MODULE__; all = true) - if startswith("$name", "test_") - @testset "$name" begin - MOI.empty!(model) - getfield(@__MODULE__, name)(model; kwargs...) - end - end + is_test(name) = startswith("$name", "test_") + @testset "$name" for name in filter(is_test, names(@__MODULE__; all = true)) + MOI.empty!(model) + getfield(@__MODULE__, name)(model; kwargs...) end return end