def METHOD_NAME(self) -> None:
    """Test 1D convolution.
    """
    n = 3
    x = cvx.Variable(n)
    f = np.array([1, 2, 3])
    g = np.array([0, 1, 0.5])
    f_conv_g = np.array([0., 1., 2.5,  4., 1.5])
    with pytest.warns(DeprecationWarning, match="Use convolve"):
        expr = cvx.conv(f, g)
    assert expr.is_constant()
    self.assertEqual(expr.shape, (5,))
    self.assertEqual(expr.shape, expr.value.shape)
    self.assertItemsAlmostEqual(expr.value, f_conv_g)
    expr = cvx.conv(f, x)
    assert expr.is_affine()
    self.assertEqual(expr.shape, (5,))
    # Matrix stuffing.
    prob = cvx.Problem(cvx.Minimize(cvx.norm(expr, 1)),
                       [x == g])
    result = prob.solve(solver=cvx.SCS)
    self.assertAlmostEqual(result, sum(f_conv_g), places=3)
    self.assertItemsAlmostEqual(expr.value, f_conv_g)
    # Test other shape configurations.
    expr = cvx.conv(2, g)
    self.assertEqual(expr.shape, (3,))
    self.assertEqual(expr.shape, expr.value.shape)
    self.assertItemsAlmostEqual(expr.value, 2 * g)
    expr = cvx.conv(f, 2)
    self.assertEqual(expr.shape, (3,))
    self.assertEqual(expr.shape, expr.value.shape)
    self.assertItemsAlmostEqual(expr.value, 2 * f)
    expr = cvx.conv(f, g[:, None])
    self.assertEqual(expr.shape, (5, 1))
    self.assertEqual(expr.shape, expr.value.shape)
    self.assertItemsAlmostEqual(expr.value, f_conv_g)
    expr = cvx.conv(f[:, None], g)
    self.assertEqual(expr.shape, (5, 1))
    self.assertEqual(expr.shape, expr.value.shape)
    self.assertItemsAlmostEqual(expr.value, f_conv_g)
    expr = cvx.conv(f[:, None], g[:, None])
    self.assertEqual(expr.shape, (5, 1))
    self.assertEqual(expr.shape, expr.value.shape)
    self.assertItemsAlmostEqual(expr.value, f_conv_g)