@@ -4,6 +4,13 @@ const MOIT = MOI.Test
44const MOIU = MOI. Utilities
55const MOIB = MOI. Bridges
66
7+ import SDPA
8+ const optimizer = SDPA. Optimizer ()
9+
10+ @testset " SolverName" begin
11+ @test MOI. get (optimizer, MOI. SolverName ()) == " SDPA"
12+ end
13+
714MOIU. @model (SDModelData,
815 (),
916 (MOI. EqualTo, MOI. GreaterThan, MOI. LessThan),
@@ -16,21 +23,24 @@ MOIU.@model(SDModelData,
1623 (MOI. VectorAffineFunction,))
1724# UniversalFallback is needed for starting values, even if they are ignored by SDPA
1825const cache = MOIU. UniversalFallback (SDModelData {Float64} ())
19- const optimizer = MOIU. CachingOptimizer (cache,
20- SDPA . Optimizer () )
26+ const cached = MOIU. CachingOptimizer (cache, optimizer)
27+ const bridged = MOIB . full_bridge_optimizer (cached, Float64 )
2128# test 1e-3 because of rsoc3 test, otherwise, 1e-5 is enough
2229const config = MOIT. TestConfig (atol= 1e-3 , rtol= 1e-3 )
2330
24- @testset " SolverName" begin
25- @test MOI. get (optimizer, MOI. SolverName ()) == " SDPA"
31+ @testset " Unit" begin
32+ MOIT. unittest (bridged, config,
33+ [# Multiple variable constraints on same variable
34+ " solve_with_lowerbound" , " solve_affine_interval" ,
35+ " solve_with_upperbound" ,
36+ # Quadratic functions are not supported
37+ " solve_qcp_edge_cases" , " solve_qp_edge_cases" ,
38+ # Integer and ZeroOne sets are not supported
39+ " solve_integer_edge_cases" , " solve_objbound_edge_cases" ])
2640end
27-
2841@testset " Linear tests" begin
29- MOIT. contlineartest (MOIB. SplitInterval {Float64} (optimizer), config,
30- [" linear12" ])
42+ MOIT. contlineartest (bridged, config, [" linear12" ])
3143end
3244@testset " Conic tests" begin
33- MOIT. contconictest (MOIB. RootDet {Float64} (MOIB. GeoMean {Float64} (MOIB. RSOCtoPSD {Float64} (MOIB. SOCtoPSD {Float64} (optimizer)))),
34- config,
35- [" lin3" , " soc3" , " psds" , " rootdets" , " logdet" , " exp" ])
45+ MOIT. contconictest (bridged, config, [" lin3" , " soc3" , " psds" , " rootdets" , " logdet" , " exp" ])
3646end
0 commit comments