@@ -10,6 +10,7 @@ include("setoptests.jl")
10
10
include (" macrotests.jl" )
11
11
include (" lazymultests.jl" )
12
12
include (" concattests.jl" )
13
+ include (" broadcasttests.jl" )
13
14
14
15
@testset " Kron" begin
15
16
A = [1 ,2 ,3 ]
@@ -62,77 +63,6 @@ include("concattests.jl")
62
63
@test Array (K) == zeros (4 ,1 )
63
64
end
64
65
65
- @testset " BroadcastArray" begin
66
- a = randn (6 )
67
- b = BroadcastArray (exp, a)
68
- @test BroadcastArray (b) == BroadcastVector (b) == b
69
-
70
- @test b == Vector (b) == exp .(a)
71
- @test b[2 : 5 ] isa BroadcastVector
72
- @test b[2 : 5 ] == exp .(a[2 : 5 ])
73
-
74
- @test exp .(b) isa BroadcastVector
75
- @test b .+ SVector (1 ,2 ,3 ,4 ,5 ,6 ) isa BroadcastVector
76
- @test SVector (1 ,2 ,3 ,4 ,5 ,6 ) .+ b isa BroadcastVector
77
-
78
- A = randn (6 ,6 )
79
- B = BroadcastArray (exp, A)
80
-
81
- @test Matrix (B) == exp .(A)
82
-
83
-
84
- C = BroadcastArray (+ , A, 2 )
85
- @test C == A .+ 2
86
- D = BroadcastArray (+ , A, C)
87
- @test D == A + C
88
-
89
- @test sum (B) ≈ sum (exp, A)
90
- @test sum (C) ≈ sum (A .+ 2 )
91
- @test prod (B) ≈ prod (exp, A)
92
- @test prod (C) ≈ prod (A .+ 2 )
93
-
94
- x = Vcat ([3 ,4 ], [1 ,1 ,1 ,1 ,1 ], 1 : 3 )
95
- @test x .+ (1 : 10 ) isa Vcat
96
- @test (1 : 10 ) .+ x isa Vcat
97
- @test x + (1 : 10 ) isa Vcat
98
- @test (1 : 10 ) + x isa Vcat
99
- @test x .+ (1 : 10 ) == (1 : 10 ) .+ x == (1 : 10 ) + x == x + (1 : 10 ) == Vector (x) + (1 : 10 )
100
-
101
- @test exp .(x) isa Vcat
102
- @test exp .(x) == exp .(Vector (x))
103
- @test x .+ 2 isa Vcat
104
- @test (x .+ 2 ). args[end ] ≡ x. args[end ] .+ 2 ≡ 3 : 5
105
- @test x .* 2 isa Vcat
106
- @test 2 .+ x isa Vcat
107
- @test 2 .* x isa Vcat
108
-
109
- A = Vcat ([[1 2 ; 3 4 ]], [[4 5 ; 6 7 ]])
110
- @test A .+ Ref (I) == Ref (I) .+ A == Vcat ([[2 2 ; 3 5 ]], [[5 5 ; 6 8 ]])
111
-
112
- @test_broken BroadcastArray (* ,1.1 ,[1 2 ])[1 ] == 1.1
113
-
114
- B = BroadcastArray (* , Diagonal (randn (5 )), randn (5 ,5 ))
115
- @test B == broadcast (* ,B. args... )
116
- @test colsupport (B,1 ) == rowsupport (B,1 ) == 1 : 1
117
- @test colsupport (B,3 ) == rowsupport (B,3 ) == 3 : 3
118
- @test colsupport (B,5 ) == rowsupport (B,5 ) == 5 : 5
119
- B = BroadcastArray (* , Diagonal (randn (5 )), 2 )
120
- @test B == broadcast (* ,B. args... )
121
- @test colsupport (B,1 ) == rowsupport (B,1 ) == 1 : 1
122
- @test colsupport (B,3 ) == rowsupport (B,3 ) == 3 : 3
123
- @test colsupport (B,5 ) == rowsupport (B,5 ) == 5 : 5
124
- B = BroadcastArray (* , Diagonal (randn (5 )), randn (5 ))
125
- @test B == broadcast (* ,B. args... )
126
- @test colsupport (B,1 ) == rowsupport (B,1 ) == 1 : 1
127
- @test colsupport (B,3 ) == rowsupport (B,3 ) == 3 : 3
128
- @test colsupport (B,5 ) == rowsupport (B,5 ) == 5 : 5
129
-
130
- B = BroadcastArray (+ , Diagonal (randn (5 )), 2 )
131
- @test colsupport (B,1 ) == rowsupport (B,1 ) == 1 : 5
132
- @test colsupport (B,3 ) == rowsupport (B,3 ) == 1 : 5
133
- @test colsupport (B,5 ) == rowsupport (B,5 ) == 1 : 5
134
- end
135
-
136
66
@testset " Cache" begin
137
67
A = 1 : 10
138
68
C = cache (A)
233
163
@test cumsum (ApplyArray (+ , 1 : 10 )) === Cumsum (ApplyArray (+ , 1 : 10 ))
234
164
end
235
165
236
- @testset " vector*matrix broadcasting #27" begin
237
- H = [1. , 0. ]
238
- @test Mul (H, H' ) .+ 1 == H* H' .+ 1
239
- B = randn (2 ,2 )
240
- @test Mul (H, H' ) .+ B == H* H' .+ B
241
- end
242
-
243
- @testset " Lazy range" begin
244
- @test broadcasted (LazyArrayStyle {1} (), + , 1 : 5 ) ≡ 1 : 5
245
- @test broadcasted (LazyArrayStyle {1} (), + , 1 , 1 : 5 ) ≡ 2 : 6
246
- @test broadcasted (LazyArrayStyle {1} (), + , 1 : 5 , 1 ) ≡ 2 : 6
247
-
248
- @test broadcasted (LazyArrayStyle {1} (), + , Fill (2 ,5 )) ≡ Fill (2 ,5 )
249
- @test broadcasted (LazyArrayStyle {1} (), + , 1 , Fill (2 ,5 )) ≡ Fill (3 ,5 )
250
- @test broadcasted (LazyArrayStyle {1} (), + , Fill (2 ,5 ), 1 ) ≡ Fill (3 ,5 )
251
- @test broadcasted (LazyArrayStyle {1} (), + , Ref (1 ), Fill (2 ,5 )) ≡ Fill (3 ,5 )
252
- @test broadcasted (LazyArrayStyle {1} (), + , Fill (2 ,5 ), Ref (1 )) ≡ Fill (3 ,5 )
253
- @test broadcasted (LazyArrayStyle {1} (), + , 1 , Fill (2 ,5 )) ≡ Fill (3 ,5 )
254
- @test broadcasted (LazyArrayStyle {1} (), + , Fill (2 ,5 ), Fill (3 ,5 )) ≡ Fill (5 ,5 )
255
-
256
- @test broadcasted (LazyArrayStyle {1} (), * , Zeros (5 ), Zeros (5 )) ≡ Zeros (5 )
257
- b = BroadcastArray (exp, randn (5 ))
258
- @test b .* Zeros (5 ) ≡ Zeros (5 )
259
- @test Zeros (5 ) .* b ≡ Zeros (5 )
260
- end
261
166
@testset " col/rowsupport" begin
262
167
A = randn (5 ,6 )
263
168
@test rowsupport (A,1 ) === Base. OneTo (6 )
0 commit comments