From e994e075e62f5819fd64d488c19af5981000f2fa Mon Sep 17 00:00:00 2001 From: Oscar Smith Date: Tue, 24 Jun 2025 16:30:57 -0400 Subject: [PATCH] Update ode_event_tests.jl tests for https://github.com/SciML/OrdinaryDiffEq.jl/pull/2743 --- test/integrators/ode_event_tests.jl | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/test/integrators/ode_event_tests.jl b/test/integrators/ode_event_tests.jl index 69f0153d5b..5bab8477de 100644 --- a/test/integrators/ode_event_tests.jl +++ b/test/integrators/ode_event_tests.jl @@ -429,3 +429,20 @@ step!(integrator, 1e-5, true) solve(prob, LinearExponential(), dt = t_l[2] - t_l[1], callback = cb) @test length(saved_values.saveval) == length(t_l) end + +# https://github.com/SciML/DifferentialEquations.jl/issues/1092 +@testset "set_u! on first timestep" begin + prob = ODEProblem((du, u, p, t) -> (du .= [u[2], 0]), [4.0,-1.0], (0.0,1.0)) + integ = init(prob, Euler(); dt=0.002, adaptive=false, save_everystep=false) + set_u!(integ, [4.0, 2.0]) + @test integ.u == [4,2] + step!(integ) + @test integ.u == [4.004, 2] + # check that set_u! also works after a step + integ = init(prob, Euler(); dt=0.002, adaptive=false, save_everystep=false) + step!(integ) + set_u!(integ, [4.0, 2.0]) + @test integ.u == [4,2] + step!(integ) + @test integ.u == [4.004, 2] +end