123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- <?php
- namespace Doctrine\Tests\ORM\Mapping;
- use Doctrine\ORM\Mapping\ClassMetadata,
- Doctrine\ORM\Mapping\Driver\XmlDriver,
- Doctrine\ORM\Mapping\Driver\YamlDriver;
- require_once __DIR__ . '/../../TestInit.php';
- class YamlMappingDriverTest extends AbstractMappingDriverTest
- {
- protected function _loadDriver()
- {
- if (!class_exists('Symfony\Component\Yaml\Yaml', true)) {
- $this->markTestSkipped('Please install Symfony YAML Component into the include path of your PHP installation.');
- }
- return new YamlDriver(__DIR__ . DIRECTORY_SEPARATOR . 'yaml');
- }
- /**
- * @group DDC-671
- *
- * Entities for this test are in AbstractMappingDriverTest
- */
- public function testJoinTablesWithMappedSuperclassForYamlDriver()
- {
- $yamlDriver = $this->_loadDriver();
- $yamlDriver->addPaths(array(__DIR__ . DIRECTORY_SEPARATOR . 'yaml'));
- $em = $this->_getTestEntityManager();
- $em->getConfiguration()->setMetadataDriverImpl($yamlDriver);
- $factory = new \Doctrine\ORM\Mapping\ClassMetadataFactory();
- $factory->setEntityManager($em);
- $classPage = new ClassMetadata('Doctrine\Tests\Models\DirectoryTree\File');
- $classPage = $factory->getMetadataFor('Doctrine\Tests\Models\DirectoryTree\File');
- $this->assertEquals('Doctrine\Tests\Models\DirectoryTree\File', $classPage->associationMappings['parentDirectory']['sourceEntity']);
- $classDirectory = new ClassMetadata('Doctrine\Tests\Models\DirectoryTree\Directory');
- $classDirectory = $factory->getMetadataFor('Doctrine\Tests\Models\DirectoryTree\Directory');
- $this->assertEquals('Doctrine\Tests\Models\DirectoryTree\Directory', $classDirectory->associationMappings['parentDirectory']['sourceEntity']);
- }
- /**
- * @group DDC-1468
- *
- * @expectedException Doctrine\ORM\Mapping\MappingException
- * @expectedExceptionMessage Invalid mapping file 'Doctrine.Tests.Models.Generic.SerializationModel.dcm.yml' for class 'Doctrine\Tests\Models\Generic\SerializationModel'.
- */
- public function testInvalidMappingFileException()
- {
- $this->createClassMetadata('Doctrine\Tests\Models\Generic\SerializationModel');
- }
- }
|