|
278 | 278 | @test S[1,4] == S[4] == 4
|
279 | 279 | @test_throws BoundsError S[1,1]
|
280 | 280 | @test axes(S) == IdentityUnitRange.((0:1, 3:4))
|
| 281 | + S = view(A, axes(A)...) |
| 282 | + @test S == A |
| 283 | + @test S[0,3] == S[1] == 1 |
| 284 | + @test S[1,3] == S[2] == 2 |
| 285 | + @test S[0,4] == S[3] == 3 |
| 286 | + @test S[1,4] == S[4] == 4 |
| 287 | + @test_throws BoundsError S[1,1] |
| 288 | + @test axes(S) == OffsetArrays.IdOffsetRange.((0:1, 3:4)) |
| 289 | + # issue 100 |
| 290 | + S = view(A, axes(A, 1), 3) |
| 291 | + @test S == A[:, 3] |
| 292 | + @test S[0] == 1 |
| 293 | + @test S[1] == 2 |
| 294 | + @test_throws BoundsError S[length(S)] |
| 295 | + @test axes(S) == (OffsetArrays.IdOffsetRange(0:1), ) |
| 296 | + # issue 100 |
| 297 | + S = view(A, 1, axes(A, 2)) |
| 298 | + @test S == A[1, :] |
| 299 | + @test S[3] == 2 |
| 300 | + @test S[4] == 4 |
| 301 | + @test_throws BoundsError S[1] |
| 302 | + @test axes(S) == (OffsetArrays.IdOffsetRange(3:4), ) |
| 303 | + |
| 304 | + A0 = collect(reshape(1:24, 2, 3, 4)) |
| 305 | + A = OffsetArray(A0, (-1,2,1)) |
| 306 | + S = view(A, axes(A, 1), 3:4, axes(A, 3)) |
| 307 | + @test S == A[:, 3:4, :] |
| 308 | + @test S[0, 1, 2] == A[0, 3, 2] |
| 309 | + @test S[0, 2, 2] == A[0, 4, 2] |
| 310 | + @test S[1, 1, 2] == A[1, 3, 2] |
| 311 | + @test axes(S) == (OffsetArrays.IdOffsetRange(0:1), Base.OneTo(2), OffsetArrays.IdOffsetRange(2:5)) |
281 | 312 | end
|
282 | 313 |
|
283 | 314 | @testset "iteration" begin
|
|
0 commit comments