Skip to content

Commit 94f6f8d

Browse files
committed
unified tests
1 parent dd820e2 commit 94f6f8d

File tree

1 file changed

+16
-33
lines changed

1 file changed

+16
-33
lines changed

test/slopes.jl

Lines changed: 16 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -9,39 +9,22 @@ struct Slopes{T}
99
sol::Interval{T}
1010
end
1111

12-
@testset "Automatic slope expansion(Float64)" begin
12+
@testset "Automatic slope expansion" begin
13+
for T in [Float64, BigFloat]
14+
s = interval(T(0.75), T(1.75))
15+
rts = Slopes{T}[]
16+
push!(rts, Slopes(x->((x + sin(x)) * exp(-x^2)), s, mid(s), interval(T(-2.8), T(0.1))))
17+
push!(rts, Slopes(x->(x^4 - 10x^3 + 35x^2 - 50x + 24), s, mid(s), interval(T(-44), T(38.5))))
18+
push!(rts, Slopes(x->((log(x + 1.25) - 0.84x) ^ 2), s, mid(s), interval(T(-0.16), T(0.44))))
19+
push!(rts, Slopes(x->(0.02x^2 - 0.03exp(-(20(x - 0.875))^2)), s, mid(s), interval(T(0.03), T(0.33))))
20+
push!(rts, Slopes(x->(exp(x^2)), s, mid(s), interval(T(6.03), T(33.23))))
21+
push!(rts, Slopes(x->(x^4 - 12x^3 + 47x^2 - 60x - 20exp(-x)), s, mid(s), interval(T(-39), T(65.56))))
22+
push!(rts, Slopes(x->(x^6 - 15x^4 + 27x^2 + 250), s, mid(s), interval(T(-146.9), T(67.1))))
23+
push!(rts, Slopes(x->(atan(cos(tan(x)))), s, mid(s), interval(T(1), T(2))))
24+
push!(rts, Slopes(x->(asin(cos(acos(sin(x))))), s, mid(s), interval(T(1.36), T(∞))))
1325

14-
s = interval(0.75, 1.75)
15-
rts = Slopes{Float64}[]
16-
push!(rts, Slopes(x->((x + sin(x)) * exp(-x^2)), s, mid(s), interval(-2.8, 0.1)))
17-
push!(rts, Slopes(x->(x^4 - 10x^3 + 35x^2 - 50x + 24), s, mid(s), interval(-44, 38.5)))
18-
push!(rts, Slopes(x->((log(x + 1.25) - 0.84x) ^ 2), s, mid(s), interval(-0.16, 0.44)))
19-
push!(rts, Slopes(x->(0.02x^2 - 0.03exp(-(20(x - 0.875))^2)), s, mid(s), interval(0.03, 0.33)))
20-
push!(rts, Slopes(x->(exp(x^2)), s, mid(s), interval(6.03, 33.23)))
21-
push!(rts, Slopes(x->(x^4 - 12x^3 + 47x^2 - 60x - 20exp(-x)), s, mid(s), interval(-39, 65.56)))
22-
push!(rts, Slopes(x->(x^6 - 15x^4 + 27x^2 + 250), s, mid(s), interval(-146.9, 67.1)))
23-
push!(rts, Slopes(x->(atan(cos(tan(x)))), s, mid(s), interval(1, 2)))
24-
push!(rts, Slopes(x->(asin(cos(acos(sin(x))))), s, mid(s), interval(1.36, ∞)))
25-
26-
for i in 1:length(rts)
27-
@test slope(rts[i].f, rts[i].x, rts[i].c) rts[i].sol
28-
end
29-
end
30-
31-
@testset "Automatic slope expansion(BigFloat)" begin
32-
s = interval(BigFloat(0.75), BigFloat(1.75))
33-
rts = Slopes{BigFloat}[]
34-
push!(rts, Slopes(x->((x + sin(x)) * exp(-x^2)), s, mid(s), interval(BigFloat(-2.8), BigFloat(0.1))))
35-
push!(rts, Slopes(x->(x^4 - 10x^3 + 35x^2 - 50x + 24), s, mid(s), interval(BigFloat(-44), BigFloat(38.5))))
36-
push!(rts, Slopes(x->((log(x + 1.25) - 0.84x) ^ 2), s, mid(s), interval(BigFloat(-0.16), BigFloat(0.44))))
37-
push!(rts, Slopes(x->(0.02x^2 - 0.03exp(-(20(x - 0.875))^2)), s, mid(s), interval(BigFloat(0.03), BigFloat(0.33))))
38-
push!(rts, Slopes(x->(exp(x^2)), s, mid(s), interval(BigFloat(6.03), BigFloat(33.23))))
39-
push!(rts, Slopes(x->(x^4 - 12x^3 + 47x^2 - 60x - 20exp(-x)), s, mid(s), interval(BigFloat(-39), BigFloat(65.56))))
40-
push!(rts, Slopes(x->(x^6 - 15x^4 + 27x^2 + 250), s, mid(s), interval(BigFloat(-146.9), BigFloat(67.1))))
41-
push!(rts, Slopes(x->(atan(cos(tan(x)))), s, mid(s), interval(BigFloat(1), BigFloat(2))))
42-
push!(rts, Slopes(x->(asin(cos(acos(sin(x))))), s, mid(s), interval(BigFloat(1.36), BigFloat(∞))))
43-
44-
for i in 1:length(rts)
45-
@test slope(rts[i].f, rts[i].x, rts[i].c) rts[i].sol
26+
for i in 1:length(rts)
27+
@test slope(rts[i].f, rts[i].x, rts[i].c) rts[i].sol
28+
end
4629
end
4730
end

0 commit comments

Comments
 (0)