Skip to content

Commit b064b72

Browse files
committed
Add tests for convert
1 parent 357cc70 commit b064b72

File tree

2 files changed

+33
-0
lines changed

2 files changed

+33
-0
lines changed

test/bidiag.jl

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1158,4 +1158,15 @@ end
11581158
@test opnorm(B, Inf) == opnorm(Matrix(B), Inf)
11591159
end
11601160

1161+
@testset "convert to Bidiagonal" begin
1162+
M = diagm(0 => [1,2,3], 1=>[4,5])
1163+
B = convert(Bidiagonal, M)
1164+
@test B == Bidiagonal(M, :U)
1165+
M = diagm(0 => [1,2,3], -1=>[4,5])
1166+
B = convert(Bidiagonal, M)
1167+
@test B == Bidiagonal(M, :L)
1168+
M = diagm(-1 => [1,2], 1=>[4,5])
1169+
@test_throws InexactError convert(Bidiagonal, M)
1170+
end
1171+
11611172
end # module TestBidiagonal

test/tridiag.jl

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1099,4 +1099,26 @@ end
10991099
@test opnorm(S, Inf) == opnorm(Matrix(S), Inf)
11001100
end
11011101

1102+
@testset "convert to Tridiagonal/SymTridiagonal" begin
1103+
@testset "Tridiagonal" begin
1104+
for M in [diagm(0 => [1,2,3], 1=>[4,5]),
1105+
diagm(0 => [1,2,3], 1=>[4,5], -1=>[6,7]),
1106+
diagm(-1 => [1,2], 1=>[4,5])]
1107+
B = convert(Tridiagonal, M)
1108+
@test B == Tridiagonal(M)
1109+
end
1110+
@test_throws InexactError convert(Tridiagonal, fill(5, 4, 4))
1111+
end
1112+
@testset "SymTridiagonal" begin
1113+
for M in [diagm(0 => [1,2,3], 1=>[4,5], -1=>[4,5]),
1114+
diagm(0 => [1,2,3]),
1115+
diagm(-1 => [1,2], 1=>[1,2])]
1116+
B = convert(SymTridiagonal, M)
1117+
@test B == SymTridiagonal(M)
1118+
end
1119+
@test_throws InexactError convert(SymTridiagonal, fill(5, 4, 4))
1120+
@test_throws InexactError convert(SymTridiagonal, diagm(0=>fill(NaN,4)))
1121+
end
1122+
end
1123+
11021124
end # module TestTridiagonal

0 commit comments

Comments
 (0)