private Object askDefaultValueProviders(IMockInvocation invocation) {
    if (defaultValueProviders.isEmpty()) {
      return null;
    }
    Class<?> returnType = invocation.getMethod().getReturnType();
    Type exactReturnType = invocation.getMethod().getExactReturnType();
    return defaultValueProviders.stream()
        .map(provider -> provider.provideDefaultValue(returnType, exactReturnType))
        .filter(Objects::nonNull)
        .findFirst()
        .orElse(null);
  }
A response strategy that returns zero, an "empty" object, or a "dummy" object,
depending on the method's declared return type.
spock-core/src/main/java/org/spockframework/mock/EmptyOrDummyResponse.java