@Test
public void shouldCallApplyMethodWhenSuitableOperationFound() {

    when(mockOperation.handles(anyChar())).thenReturn(true);
    when(mockOperation.apply(2, 2)).thenReturn(4);
    calculator.calculate(2, 2, '*');
    verify(mockOperation, times(1)).apply(2,2);
}