diff --git a/src/MOI_wrapper.jl b/src/MOI_wrapper.jl index 3ac4f57..41d0091 100644 --- a/src/MOI_wrapper.jl +++ b/src/MOI_wrapper.jl @@ -368,6 +368,10 @@ function MOI.get(optimizer::Optimizer, ::MOI.SolveTimeSec) return optimizer.solver.stats.elapsed_time end +function MOI.get(optimizer::Optimizer, ::MOI.BarrierIterations) + return optimizer.solver.stats.iter +end + function MOI.get(optimizer::Optimizer, ::MOI.RawStatusString) return SolverCore.STATUSES[optimizer.solver.stats.status] end diff --git a/test/maxcut.jl b/test/maxcut.jl index c3af3ef..c6136bd 100644 --- a/test/maxcut.jl +++ b/test/maxcut.jl @@ -29,6 +29,8 @@ function test_maxcut(; is_dual, sparse, vector) set_attribute(model, "max_iter", 20) optimize!(model) @test termination_status(model) == MOI.LOCALLY_SOLVED + # `Dualization.dual_attribute` does not support `BarrierIterations` yet + is_dual || @test 0 < MOI.get(model, MOI.BarrierIterations()) <= 20 @test objective_value(model) ≈ 18 rtol = 1e-6 diff_check(model) T = Float64