/**
* @test
*/
public function nodeTypesCanHaveAnyNumberOfSuperTypes()
{
$baseType = new NodeType('Neos.ContentRepository:Base', array(), array());
$folderType = new NodeType('Neos.ContentRepository.Testing:Document', array($baseType), array());
$hideableNodeType = new NodeType('Neos.ContentRepository.Testing:HideableContent', array(), array());
$pageType = new NodeType('Neos.ContentRepository.Testing:Page', array($folderType, $hideableNodeType), array());
$this->assertEquals(array($folderType, $hideableNodeType), $pageType->getDeclaredSuperTypes());
$this->assertTrue($pageType->isOfType('Neos.ContentRepository.Testing:Page'));
$this->assertTrue($pageType->isOfType('Neos.ContentRepository.Testing:HideableContent'));
$this->assertTrue($pageType->isOfType('Neos.ContentRepository.Testing:Document'));
$this->assertTrue($pageType->isOfType('Neos.ContentRepository:Base'));
$this->assertFalse($pageType->isOfType('Neos.ContentRepository:Exotic'));
}