public function testNamesapcedClassDefParser() { $parser = ClassManifest::get_namespaced_class_parser(); $tokens = $this->getNamespaceTokens(); $matches = $parser->findAll($tokens); $classes = array(); if ($matches) { foreach ($matches as $match) { $classes[$match['className']] = $match; } } $this->assertArrayHasKey('ClassA', $classes); $this->assertArrayHasKey('ClassB', $classes); $this->assertEquals(array('ParentClassB'), $classes['ClassB']['extends']); $this->assertArrayHasKey('ClassC', $classes); $this->assertEquals(array('\\', 'ParentClassC'), $classes['ClassC']['extends']); $this->assertArrayHasKey('ClassD', $classes); $this->assertEquals(array('subtest', '\\', 'ParentClassD'), $classes['ClassD']['extends']); $this->assertArrayHasKey('ClassE', $classes); $this->assertContains('InterfaceE', $classes['ClassE']['interfaces']); $this->assertArrayHasKey('ClassF', $classes); $this->assertEquals(array('\\', 'InterfaceF'), $classes['ClassF']['interfaces']); }