@Test
  public void testCalculateDelta() {
    Layer layer = getContainedConfig();
    INDArray col = getContainedCol();

    INDArray expectedOutput =
        Nd4j.create(
            new double[] {
              -12., -12., -12., -12., -56., -56., -56., -56., -12., -12., -12.,
              -12., -56., -56., -56., -56., -12., -12., -12., -12., -56., -56.,
              -56., -56., -12., -12., -12., -12., -56., -56., -56., -56.
            },
            new int[] {1, 2, 4, 4});

    org.deeplearning4j.nn.layers.convolution.ConvolutionLayer layer2 =
        (org.deeplearning4j.nn.layers.convolution.ConvolutionLayer) layer;
    layer2.setCol(col);
    INDArray delta = layer2.calculateDelta(epsilon);

    assertEquals(expectedOutput.shape(), delta.shape());
    assertEquals(expectedOutput, delta);
  }