|
61 | 61 | nlp = OptimizationProblems.ADNLPProblems.arglina() |
62 | 62 | model = OptimizationProblems.PureJuMP.arglina() |
63 | 63 | @testset "Test $solver_name" for solver_name in JSOSuite.optimizers[!, :name_solver] |
| 64 | + name = JSOSuite.optimizers[JSOSuite.optimizers.name_solver .== solver_name, :name][1] |
64 | 65 | solver_name == :DCIWorkspace && continue |
65 | 66 | solver_name == :RipQPSolver && continue |
66 | 67 | can_solve_nlp = |
67 | 68 | JSOSuite.optimizers[JSOSuite.optimizers.name_solver .== solver_name, :can_solve_nlp] |
68 | 69 | spec_nls = |
69 | 70 | JSOSuite.optimizers[JSOSuite.optimizers.name_solver .== solver_name, :specialized_nls] |
70 | | - if is_available(solver_name) && can_solve_nlp[1] |
| 71 | + if is_available(name) && can_solve_nlp[1] |
71 | 72 | test_in_place_solve(nlp, solver_name) |
72 | 73 | test_in_place_solve(model, solver_name) |
73 | | - elseif is_available(solver_name) && spec_nls[1] # NLS |
| 74 | + elseif is_available(name) && spec_nls[1] # NLS |
74 | 75 | nls = OptimizationProblems.ADNLPProblems.arglina(use_nls = true) |
75 | 76 | test_in_place_solve(nls, solver_name) |
76 | | - elseif is_available(solver_name) # RipQP |
| 77 | + elseif is_available(name) # RipQP |
77 | 78 | nlp_qm = QuadraticModel(nlp, nlp.meta.x0) |
78 | 79 | test_in_place_solve(nlp_qm, solver_name) |
79 | 80 | end |
|
112 | 113 | OptimizationProblems.ADNLPProblems.eval(Meta.parse(problem))() for |
113 | 114 | problem ∈ meta[(5 .<= meta.nvar .<= 10) .& (meta.ncon .== 0) .& (.!meta.has_bounds), :name] |
114 | 115 | ] |
115 | | - select = JSOSuite.optimizers[ |
116 | | - JSOSuite.optimizers.can_solve_nlp .& JSOSuite.optimizers.is_available, |
117 | | - :name, |
118 | | - ] |
| 116 | + select = is_available(JSOSuite.optimizers) |
| 117 | + select = select[JSOSuite.optimizers.can_solve_nlp, :name] |
119 | 118 | stats = bmark_solvers(ad_problems, select, atol = 1e-3, max_time = 10.0, verbose = 0) |
120 | 119 | @test true # just test that it runs |
121 | 120 | end |
@@ -158,7 +157,7 @@ for solver in eachrow(JSOSuite.optimizers) |
158 | 157 | nlp = mgh17() |
159 | 158 | @testset "Test options in $(solver.name)" begin |
160 | 159 | # We just test that the solver runs with the options |
161 | | - if solver.is_available |
| 160 | + if is_available(solver.name) |
162 | 161 | if solver.nonlinear_obj |
163 | 162 | minimize( |
164 | 163 | solver.name, |
|
193 | 192 | callback = (args...) -> nothing |
194 | 193 | for solver in eachrow(JSOSuite.optimizers) |
195 | 194 | @testset "Test options in $(solver.name)" begin |
196 | | - solver.is_available || continue |
| 195 | + is_available(solver.name) || continue |
197 | 196 | ((nlp.meta.ncon > 0) && (!solver.equalities)) && continue |
198 | 197 | # We just test that the solver runs with the options |
199 | 198 | if solver.can_solve_nlp |
|
0 commit comments