@@ -11,7 +11,6 @@ using Test
11
11
using Documenter: doctest
12
12
doctest (StructArrays)
13
13
14
-
15
14
@testset " index" begin
16
15
a, b = [1 2 ; 3 4 ], [4 5 ; 6 7 ]
17
16
t = StructArray ((a = a, b = b))
326
325
end
327
326
end
328
327
329
-
330
328
struct A
331
329
x:: Int
332
330
y:: Int
@@ -347,11 +345,11 @@ end
347
345
@test StructArray (a= a, b= b) == StructArray ((a= a, b= b))
348
346
@test StructArray {ComplexF64} (re= a, im= b) == StructArray {ComplexF64} ((a, b))
349
347
f1 () = StructArray (a= [1.2 ], b= [" test" ])
350
- f2 () = StructArray {Pair} (first= [1.2 ], second= [" test" ])
348
+ f2 () = StructArray {Pair{Float64, String} } (first= [1.2 ], second= [" test" ])
351
349
t1 = @inferred f1 ()
352
350
t2 = @inferred f2 ()
353
351
@test t1 == StructArray ((a= [1.2 ], b= [" test" ]))
354
- @test t2 == StructArray {Pair} (([1.2 ], [" test" ]))
352
+ @test t2 == StructArray {Pair{Float64, String} } (([1.2 ], [" test" ]))
355
353
end
356
354
357
355
@testset " complex" begin
@@ -390,36 +388,40 @@ end
390
388
end
391
389
392
390
@testset " resize!" begin
393
- t = StructArray {Pair} (([3 , 5 ], [" a" , " b" ]))
391
+ t = StructArray {Pair{Int, String} } (([3 , 5 ], [" a" , " b" ]))
394
392
resize! (t, 5 )
395
393
@test length (t) == 5
396
394
p = 1 => " c"
397
395
t[5 ] = p
398
396
@test t[5 ] == p
399
397
end
398
+
400
399
@testset " sizehint!" begin
401
- t = StructArray {Pair} (([3 , 5 ], [:a , :b ]))
400
+ t = StructArray {Pair{Int, Symbol} } (([3 , 5 ], [:a , :b ]))
402
401
sizehint! (t, 5 )
403
402
@test @allocated (resize! (t, 5 )) == 0
404
403
@test length (t) == 5
405
404
p = 1 => :c
406
405
t[5 ] = p
407
406
@test t[5 ] == p
408
407
end
408
+
409
409
@testset " concat" begin
410
- t = StructArray {Pair} (([3 , 5 ], [" a" , " b" ]))
410
+ t = StructArray {Pair{Int, String} } (([3 , 5 ], [" a" , " b" ]))
411
411
push! (t, (2 => " d" ))
412
- @test t == StructArray {Pair} (([3 , 5 , 2 ], [" a" , " b" , " d" ]))
412
+ @test t == StructArray {Pair{Int, String} } (([3 , 5 , 2 ], [" a" , " b" , " d" ]))
413
413
@test pop! (t) == (2 => " d" )
414
414
push! (t, (2 => " c" ))
415
- @test t == StructArray {Pair} (([3 , 5 , 2 ], [" a" , " b" , " c" ]))
415
+ @test t == StructArray {Pair{Int, String} } (([3 , 5 , 2 ], [" a" , " b" , " c" ]))
416
416
append! (t, t)
417
- @test t == StructArray {Pair} (([3 , 5 , 2 , 3 , 5 , 2 ], [" a" , " b" , " c" , " a" , " b" , " c" ]))
418
- t = StructArray {Pair} (([3 , 5 ], [" a" , " b" ]))
419
- t2 = StructArray {Pair} (([1 , 6 ], [" a" , " b" ]))
420
- @test cat (t, t2; dims= 1 ):: StructArray == StructArray {Pair} (([3 , 5 , 1 , 6 ], [" a" , " b" , " a" , " b" ])) == vcat (t, t2)
417
+ @test t == StructArray {Pair{Int, String}} (([3 , 5 , 2 , 3 , 5 , 2 ], [" a" , " b" , " c" , " a" , " b" , " c" ]))
418
+ t = StructArray {Pair{Int, String}} (([3 , 5 ], [" a" , " b" ]))
419
+ t2 = StructArray {Pair{Int, String}} (([1 , 6 ], [" a" , " b" ]))
420
+ vertical_concat = StructArray {Pair{Int, String}} (([3 , 5 , 1 , 6 ], [" a" , " b" , " a" , " b" ]))
421
+ @test cat (t, t2; dims= 1 ):: StructArray == vertical_concat == vcat (t, t2)
421
422
@test vcat (t, t2) isa StructArray
422
- @test cat (t, t2; dims= 2 ):: StructArray == StructArray {Pair} (([3 1 ; 5 6 ], [" a" " a" ; " b" " b" ])) == hcat (t, t2)
423
+ horizontal_concat = StructArray {Pair{Int, String}} (([3 1 ; 5 6 ], [" a" " a" ; " b" " b" ]))
424
+ @test cat (t, t2; dims= 2 ):: StructArray == horizontal_concat == hcat (t, t2)
423
425
@test hcat (t, t2) isa StructArray
424
426
end
425
427
0 commit comments