public function testImplementsInterface()
{
$sourceLocator = new SingleFileSourceLocator(__DIR__ . '/../Fixture/ClassWithInterfaces.php');
$subExampleClass = (new ClassReflector($sourceLocator))->reflect(ClassWithInterfaces\SubExampleClass::class);
$this->assertTrue($subExampleClass->implementsInterface(ClassWithInterfaces\A::class));
$this->assertFalse($subExampleClass->implementsInterface(ClassWithInterfaces\B::class));
$this->assertTrue($subExampleClass->implementsInterface(ClassWithInterfacesOther\B::class));
$this->assertTrue($subExampleClass->implementsInterface(ClassWithInterfaces\C::class));
$this->assertTrue($subExampleClass->implementsInterface(ClassWithInterfacesOther\D::class));
$this->assertTrue($subExampleClass->implementsInterface(\E::class));
$this->assertFalse($subExampleClass->implementsInterface(\Iterator::class));
$this->expectException(NotAString::class);
$subExampleClass->implementsInterface($this);
}