Missing type hint. Though you could accept both an instance of TypeDefinition or simply the type name, and feed that to the TypeDefinition constructor, as it is the only required arg anyway. Then you'd not have to modify the tests as done now, which in some places is rather silly.