@Test
public void invoke_CallableStatement_execute() throws Throwable {

  StatementInvocationHandler statementInvocationHandler =
      new StatementInvocationHandler(
          mockRealCallableStatement,
          TRACE_OPTIONS,
          mockTraceService,
          Optional.of("call myproc()"));
  statementInvocationHandler.invoke(
      mockProxy, PreparedStatement.class.getDeclaredMethod("execute"), new Object[0]);
  InOrder inOrder =
      inOrder(mockTraceService, mockTraceSpan, mockRealCallableStatement);
  inOrder.verify(mockTraceService).open("JDBC.Statement#execute");
  inOrder.verify(mockTraceSpan).annotate(Label.SQL_TEXT, Optional.of("#scrubbed SQL#"));
  inOrder.verify(mockRealCallableStatement).execute();
  inOrder.verify(mockTraceSpan).close();
}