Skip to content

Commit 9846bfe

Browse files
authored
fix 1d mapslices (#661)
1 parent 5cb7e07 commit 9846bfe

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/array/methods.jl

+1-1
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ end
109109
ds = DD.dims(A, _astuple(dims))
110110
# Run one slice with dimensions to get the transformed dim
111111
d_inds = map(d -> rebuild(d, 1), otherdims(A, ds))
112-
example_dims = DD.dims(f(view(A, d_inds...)))
112+
example_dims = length(d_inds) > 0 ? DD.dims(f(view(A, d_inds...))) : ()
113113
replacement_dims = if isnothing(example_dims) || length(example_dims) != length(ds)
114114
map(d -> rebuild(d, NoLookup()), ds)
115115
else

test/methods.jl

+6
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,12 @@ end
366366
@test size(y) == size(dims(y))
367367
@test dims(y) == dims(x[2:9, :, :])
368368
end
369+
370+
@testset "single dim" begin
371+
x = X(1:10)
372+
A = DimArray(ones(10), x)
373+
@test mapslices(sum, A; dims=X) == fill(10.0, X(1))
374+
end
369375
end
370376

371377
@testset "cumsum" begin

0 commit comments

Comments
 (0)