@Beta
  public <T> T Spy(
    @ClosureParams(ClosureParameterTypeFromVariableType.class)
      Closure interactions) {
    throw invalidMockCreation();
  }
Creates a spy with the specified interactions whose type and name are inferred
from the left-hand side of the enclosing assignment.

Example:

<pre>
  // type is Person.class, name is "person", returns hard-coded value for {@code name}, calls real method otherwise
  Person person = Spy {
    name >> "Fred"
  }
</pre>

@param interactions a description of the spy's interactions

@return a spy with the specified interactions whose type and name are inferred
from the left-hand side of the enclosing assignment
spock-core/src/main/java/spock/mock/MockingApi.java