/**
  * @return void
  * @covers \pdepend\reflection\api\StaticReflectionClass
  * @group reflection
  * @group reflection::api
  * @group unittest
  */
 public function testGetMethodsPrefersImplementedMethodsOverInterfaceMethods()
 {
     $interface = new \ReflectionClass('Iterator');
     $class = new StaticReflectionClass(__CLASS__, '', 0);
     $class->initMethods(array(new StaticReflectionMethod('current', '', 0), new StaticReflectionMethod('rewind', '', 0), new StaticReflectionMethod('valid', '', 0)));
     $class->initInterfaces(array($interface));
     $declaredMethodCount = 0;
     foreach ($class->getMethods() as $method) {
         if ($method->getDeclaringClass()->getName() === $class->getName()) {
             ++$declaredMethodCount;
         }
     }
     $this->assertSame(3, $declaredMethodCount);
 }