I am trying to overwrite method Call on the groovy sql class and i am able to do it.But i need to have different implementations based on order.
Sql.metaClass.call = {String sql, List params, Closure c -> c(mockResultSet)} //first time should call this method
Sql.metaClass.call = {String sql, List params, Closure c -> c(expectedLookupId)} //second time should call this method.