'Test that the different modes are producing the correct results using
a 3x3 uniform kernel.'

@pytest.mark.parametrize(u'boundary', BOUNDARY_OPTIONS)
def test_uniform_3x3(self, boundary):

    x = np.array([[0.0, 0.0, 3.0], [1.0, 0.0, 0.0], [0.0, 2.0, 0.0]], dtype=u'>f8')
    y = np.array([[1.0, 1.0, 1.0], [1.0, 1.0, 1.0], [1.0, 1.0, 1.0]], dtype=u'>f8')
    z = convolve(x, y, boundary=boundary, normalize_kernel=False)
    if (boundary is None):
        assert_array_almost_equal_nulp(z, np.array([[0.0, 0.0, 0.0], [0.0, 6.0, 0.0], [0.0, 0.0, 0.0]], dtype=u'>f8'), 10)
    elif (boundary == u'fill'):
        assert_array_almost_equal_nulp(z, np.array([[1.0, 4.0, 3.0], [3.0, 6.0, 5.0], [3.0, 3.0, 2.0]], dtype=u'>f8'), 10)
    elif (boundary == u'wrap'):
        assert_array_almost_equal_nulp(z, np.array([[6.0, 6.0, 6.0], [6.0, 6.0, 6.0], [6.0, 6.0, 6.0]], dtype=u'>f8'), 10)
    else:
        assert_array_almost_equal_nulp(z, np.array([[2.0, 7.0, 12.0], [4.0, 6.0, 8.0], [6.0, 5.0, 4.0]], dtype=u'>f8'), 10)
