function it_indexes_invalid_typehints(TypeHintIndex $typeHintIndex, NamespaceResolver $namespaceResolver)
{
$e = new DisallowedNonObjectTypehintException();
$namespaceResolver->analyse(Argument::any())->shouldBeCalled();
$namespaceResolver->resolve('FooSpec')->willReturn('FooSpec');
$namespaceResolver->resolve('int')->willThrow($e);
$this->rewrite('
<?php
class FooSpec
{
public function bar(int $bar)
{
}
}
');
$typeHintIndex->addInvalid('FooSpec', 'bar', '$bar', $e)->shouldHaveBeenCalled();
$typeHintIndex->add('FooSpec', 'bar', '$bar', Argument::any())->shouldNotHaveBeenCalled();
}