@Beta
  public <T> T GroovySpy(Class<T> type) {
    throw invalidMockCreation();
  }
Creates a Groovy spy with the specified type. If enclosed in a variable assignment, the variable name will be
used as the spy's name.

Example:

<pre>
  def person = GroovySpy(Person) // type is Person.class, name is "person"
</pre>

@param type the class type of the Groovy spy
@param <T> the class type of the Groovy spy

@return a Groovy spy with the specified type
spock-core/src/main/java/spock/mock/MockingApi.java