From 27a9a7b9cfdd9bf8a91bbfd29c3aa57b0643424b Mon Sep 17 00:00:00 2001 From: Jan Weidner Date: Tue, 26 Mar 2019 04:45:22 -0700 Subject: [PATCH 1/3] add broken test for #700 --- test/layers/conv.jl | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/test/layers/conv.jl b/test/layers/conv.jl index 69958908..1ccad1e2 100644 --- a/test/layers/conv.jl +++ b/test/layers/conv.jl @@ -61,3 +61,29 @@ end x_hat = ConvTranspose((3, 3), 1 => 1)(y) @test size(x_hat) == size(x) end + +@testset "Conv with non quadratic window #700" begin + data = fill(0f0, 7,7,1,1) + data[4,4,1,1] = 1 + + l = Conv((3,3), 1=>1) + expected = fill(zero(eltype(l.weight)),5,5,1,1) + expected[2:end-1,2:end-1,1,1] = l.weight + @test expected == l(data) + + l = Conv((3,1), 1=>1) + expected = fill(zero(eltype(l.weight)),5,7,1,1) + expected[2:end-1,4,1,1] = l.weight + @test_broken expected == l(data) + + l = Conv((1,3), 1=>1) + expected = fill(zero(eltype(l.weight)),7,5,1,1) + expected[4,2:end-1,1,1] = l.weight + @test_broken expected == l(data) + + @test_broken begin + # we test that the next expression does not throw + randn(Float32, 10,10,1,1) |> Conv((6,1), 1=>1, Flux.σ) + true + end +end From 73c5d9f25c8dfba7c88e6b7afbd6104141217cd7 Mon Sep 17 00:00:00 2001 From: Jan Weidner Date: Wed, 27 Mar 2019 17:29:31 +0100 Subject: [PATCH 2/3] fix --- test/layers/conv.jl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/layers/conv.jl b/test/layers/conv.jl index 1ccad1e2..1f441d7e 100644 --- a/test/layers/conv.jl +++ b/test/layers/conv.jl @@ -63,21 +63,21 @@ end end @testset "Conv with non quadratic window #700" begin - data = fill(0f0, 7,7,1,1) + data = zeros(Float32, 7,7,1,1) data[4,4,1,1] = 1 l = Conv((3,3), 1=>1) - expected = fill(zero(eltype(l.weight)),5,5,1,1) + expected = zeros(eltype(l.weight),5,5,1,1) expected[2:end-1,2:end-1,1,1] = l.weight @test expected == l(data) l = Conv((3,1), 1=>1) - expected = fill(zero(eltype(l.weight)),5,7,1,1) + expected = zeros(eltype(l.weight),5,7,1,1) expected[2:end-1,4,1,1] = l.weight @test_broken expected == l(data) l = Conv((1,3), 1=>1) - expected = fill(zero(eltype(l.weight)),7,5,1,1) + expected = zeros(eltype(l.weight),7,5,1,1) expected[4,2:end-1,1,1] = l.weight @test_broken expected == l(data) From e96a9d7eaf18c6af2c7d1b1a4046db55348dbe17 Mon Sep 17 00:00:00 2001 From: Jan Weidner Date: Fri, 3 May 2019 22:36:32 +0200 Subject: [PATCH 3/3] Switch broken #700 test to pass --- test/layers/conv.jl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/layers/conv.jl b/test/layers/conv.jl index 1f441d7e..2b9b04e2 100644 --- a/test/layers/conv.jl +++ b/test/layers/conv.jl @@ -74,14 +74,14 @@ end l = Conv((3,1), 1=>1) expected = zeros(eltype(l.weight),5,7,1,1) expected[2:end-1,4,1,1] = l.weight - @test_broken expected == l(data) + @test expected == l(data) l = Conv((1,3), 1=>1) expected = zeros(eltype(l.weight),7,5,1,1) expected[4,2:end-1,1,1] = l.weight - @test_broken expected == l(data) + @test expected == l(data) - @test_broken begin + @test begin # we test that the next expression does not throw randn(Float32, 10,10,1,1) |> Conv((6,1), 1=>1, Flux.σ) true