Mercurial > repos > public > sbplib_julia
comparison LazyTensors/test/runtests.jl @ 236:856caf960d89 boundary_conditions
Use CartesianIndex for a bunch of index operations
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Wed, 26 Jun 2019 18:24:07 +0200 |
parents | a20bb4fac23d |
children | 1c6afdcfd657 |
comparison
equal
deleted
inserted
replaced
235:a5fdc00d5070 | 236:856caf960d89 |
---|---|
1 using Test | 1 using Test |
2 using LazyTensors | 2 using LazyTensors |
3 | 3 |
4 @testset "Generic Mapping methods" begin | 4 @testset "Generic Mapping methods" begin |
5 struct DummyMapping{T,R,D} <: TensorMapping{T,R,D} end | 5 struct DummyMapping{T,R,D} <: TensorMapping{T,R,D} end |
6 LazyTensors.apply(m::DummyMapping{T,R,D}, v, i) where {T,R,D} = :apply | 6 LazyTensors.apply(m::DummyMapping{T,R,D}, v, i::CartesianIndex{R}) where {T,R,D} = :apply |
7 @test range_dim(DummyMapping{Int,2,3}()) == 2 | 7 @test range_dim(DummyMapping{Int,2,3}()) == 2 |
8 @test domain_dim(DummyMapping{Int,2,3}()) == 3 | 8 @test domain_dim(DummyMapping{Int,2,3}()) == 3 |
9 @test apply(DummyMapping{Int,2,3}(), zeros(Int, (0,0,0)),0) == :apply | 9 @test apply(DummyMapping{Int,2,3}(), zeros(Int, (0,0,0)),CartesianIndex(0,0)) == :apply |
10 end | 10 end |
11 | 11 |
12 @testset "Generic Operator methods" begin | 12 @testset "Generic Operator methods" begin |
13 struct DummyOperator{T,D} <: TensorOperator{T,D} end | 13 struct DummyOperator{T,D} <: TensorOperator{T,D} end |
14 @test range_size(DummyOperator{Int,2}(), (3,5)) == (3,5) | 14 @test range_size(DummyOperator{Int,2}(), (3,5)) == (3,5) |
16 end | 16 end |
17 | 17 |
18 @testset "Mapping transpose" begin | 18 @testset "Mapping transpose" begin |
19 struct DummyMapping{T,R,D} <: TensorMapping{T,R,D} end | 19 struct DummyMapping{T,R,D} <: TensorMapping{T,R,D} end |
20 | 20 |
21 LazyTensors.apply(m::DummyMapping{T,R,D}, v, i) where {T,R,D} = :apply | 21 LazyTensors.apply(m::DummyMapping{T,R,D}, v, i::CartesianIndex{R}) where {T,R,D} = :apply |
22 LazyTensors.apply_transpose(m::DummyMapping{T,R,D}, v, i) where {T,R,D} = :apply_transpose | 22 LazyTensors.apply_transpose(m::DummyMapping{T,R,D}, v, i::CartesianIndex{D}) where {T,R,D} = :apply_transpose |
23 | 23 |
24 LazyTensors.range_size(m::DummyMapping{T,R,D}, domain_size::NTuple{D,Integer}) where {T,R,D} = :range_size | 24 LazyTensors.range_size(m::DummyMapping{T,R,D}, domain_size::NTuple{D,Integer}) where {T,R,D} = :range_size |
25 LazyTensors.domain_size(m::DummyMapping{T,R,D}, range_size::NTuple{R,Integer}) where {T,R,D} = :domain_size | 25 LazyTensors.domain_size(m::DummyMapping{T,R,D}, range_size::NTuple{R,Integer}) where {T,R,D} = :domain_size |
26 | 26 |
27 m = DummyMapping{Float64,2,3}() | 27 m = DummyMapping{Float64,2,3}() |
28 @test m' isa TensorMapping{Float64, 3,2} | 28 @test m' isa TensorMapping{Float64, 3,2} |
29 @test m'' == m | 29 @test m'' == m |
30 @test apply(m',zeros(Float64,(0,0)),0) == :apply_transpose | 30 @test apply(m',zeros(Float64,(0,0)),CartesianIndex(0,0,0)) == :apply_transpose |
31 @test apply(m'',zeros(Float64,(0,0,0)),0) == :apply | 31 @test apply(m'',zeros(Float64,(0,0,0)),CartesianIndex(0,0)) == :apply |
32 @test apply_transpose(m', zeros(Float64,(0,0,0)),0) == :apply | 32 @test apply_transpose(m', zeros(Float64,(0,0,0)),CartesianIndex(0,0)) == :apply |
33 | 33 |
34 @test range_size(m', (0,0)) == :domain_size | 34 @test range_size(m', (0,0)) == :domain_size |
35 @test domain_size(m', (0,0,0)) == :range_size | 35 @test domain_size(m', (0,0,0)) == :range_size |
36 end | 36 end |
37 | 37 |