diff --git a/test/combine.jl b/test/combine.jl index 1406aff..a86a75d 100644 --- a/test/combine.jl +++ b/test/combine.jl @@ -53,6 +53,8 @@ ABdata[3:6,3:6,:,2] = Bdata A1 = AxisArray(A1data, Axis{:X}(1:2), Axis{:Y}(1:2)) A2 = AxisArray(reshape(A2data, size(A2data)..., 1), Axis{:X}(1:2), Axis{:Y}(1:2), Axis{:Z}([:foo])) +@test_throws ArgumentError collapse(Val{1}, A1, AxisArray(A1data, Axis{:L}(1:4), Axis{:M}(1:5))) + @test @inferred(collapse(Val{2}, A1, A2)) == AxisArray(cat(3, A1data, A2data), Axis{:X}(1:2), Axis{:Y}(1:2), Axis{:collapsed}(AxisArrays.CategoricalVector([(1,), (2, :foo)]))) @test @inferred(collapse(Val{2}, A1)) == AxisArray(reshape(A1, 2, 2, 1), Axis{:X}(1:2), Axis{:Y}(1:2), Axis{:collapsed}(AxisArrays.CategoricalVector([(1,)]))) @test @inferred(collapse(Val{2}, A1)) == AxisArray(reshape(A1.data, size(A1)..., 1), axes(A1)..., Axis{:collapsed}(AxisArrays.CategoricalVector([(1,)]))) diff --git a/test/indexing.jl b/test/indexing.jl index 9e5d8bd..2b4a1d1 100644 --- a/test/indexing.jl +++ b/test/indexing.jl @@ -59,7 +59,11 @@ odd_inds = collect(1:2:length(A)) @test axes(A[vec(trues(A))]) == axes(A[all_inds]) @test @inferred(A[vec(isodd.(A))]) == A[1:2:length(A)] == A[odd_inds] @test axes(A[vec(isodd.(A))]) == axes(A[odd_inds]) - +# setindex! for logical indices +AA = copy(A) +AA[vec(isodd.(A))] = 0. +@test AA[odd_inds] == zeros(odd_inds) +@test AA[2:2:length(AA)] == A[2:2:length(AA)] B = AxisArray(reshape(1:15, 5,3), .1:.1:0.5, [:a, :b, :c]) diff --git a/test/sortedvector.jl b/test/sortedvector.jl index bae7edc..b009c41 100644 --- a/test/sortedvector.jl +++ b/test/sortedvector.jl @@ -11,6 +11,7 @@ A = AxisArray(reshape(1:16, 8, 2), v, [:a, :b]) # test StepRange indexing @test v[1:2:8] == [1.0; 10.0; 12.0; 14.0] +@test AxisArrays.checkaxis(v) == nothing # Test SortedVector with a hierarchical index (indexed using Tuples) srand(1234) data = reshape(1.:40., 20, 2)