@Test public void multShouldWorkCorrect() { ComplexMatrix2x2 matrix = (ComplexMatrix2x2) context.getBean("zeroMatrix"); ComplexNumber cN = ComplexMatrix2x2Util.getComplexNumber(0, 0); when(cN.add(any(ComplexNumber.class))).thenReturn(cN); when(cN.mult(any(ComplexNumber.class))).thenReturn(cN); ComplexNumber[][] complexNumbers = new ComplexNumber[][] {{cN, cN}, {cN, cN}}; assertTrue(Arrays.deepEquals(matrix.mult(matrix).getMatrix(), complexNumbers)); }