@Override
  public <T> T Mock(Class<T> type) {
    return createMock(inferNameFromType(type), type, MockNature.MOCK, emptyMap());
  }
Creates a mock with the specified type. The mock name will be the types simple name.

Example:

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

@param type the interface or class type of the mock
@param <T> the interface or class type of the mock

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