default Supplier<Object> getResponseSupplier(IMockInvocation invocation) {
    return () -> respond(invocation);
  }
Returns a supplier with the response to be made for the given invocation.

<p>The default implementation of this method uses {@link #respond(IMockInvocation)}, the default implementation
of which uses this method. Implementations of this interface should override exactly one of these two methods.
If they override both, the result could be different depending on which method is called, if they override none,
any call will result in a {@code StackOverflowError}. Calls to the two methods must always behave consistent,
and the easiest way to achieve that is to override only one of them.

<p>If you implement this interface and do need to update shared state immediately like when implementing
{@link IChainableResponseGenerator}, you should prefer overriding this method. If not, then you might consider
just overriding {@code respond} instead.

@param invocation The invocation to generate a response for
@return A supplier that provides the generated response
spock-core/src/main/java/org/spockframework/mock/IResponseGenerator.java