Explorar el Código

updated to most recent orm and dependencies versions, adapted translation query walker

gedi hace 13 años
padre
commit
0299adeec5

+ 10 - 10
bin/vendors.php

@@ -22,16 +22,16 @@ $deps21x = array(
     array('Symfony/Component/Yaml', 'http://github.com/symfony/Yaml.git', '2b858b077d1e6748569fd143ae16da44b541d3f3'),
 );
 $deps22x = array(
-    array('doctrine-orm', 'http://github.com/doctrine/doctrine2.git', '15562d030e'),
-    array('doctrine-dbal', 'http://github.com/doctrine/dbal.git', '537de7e'),
-    array('doctrine-common', 'http://github.com/doctrine/common.git', 'b3b1e62b1c'),
-    array('doctrine-mongodb', 'http://github.com/doctrine/mongodb.git', '1674e629f2'),
-    array('doctrine-mongodb-odm', 'http://github.com/doctrine/mongodb-odm.git', '1674e629f2'),
-
-    array('Symfony/Component/ClassLoader', 'http://github.com/symfony/ClassLoader.git', '6894a17bb88831f2d260c7b9897862e5ccf35bae'),
-    array('Symfony/Component/Console', 'http://github.com/symfony/Console.git', '55344823ce1c2a780c9137d86143d9084209a02d'),
-    array('Symfony/Component/Finder', 'http://github.com/symfony/Finder.git', '83d148b10f3acf2a1d1cc427386a1d3d1a125206'),
-    array('Symfony/Component/Yaml', 'http://github.com/symfony/Yaml.git', '2b858b077d1e6748569fd143ae16da44b541d3f3'),
+    array('doctrine-orm', 'http://github.com/doctrine/doctrine2.git', 'cfe1259400'),
+    array('doctrine-dbal', 'http://github.com/doctrine/dbal.git', '5a827d7c18'),
+    array('doctrine-common', 'http://github.com/doctrine/common.git', '06e9f72342'),
+    array('doctrine-mongodb', 'http://github.com/doctrine/mongodb.git', 'e8e1e8e474'),
+    array('doctrine-mongodb-odm', 'http://github.com/doctrine/mongodb-odm.git', '5a4076ec9c'),
+
+    array('Symfony/Component/ClassLoader', 'http://github.com/symfony/ClassLoader.git', 'v2.0.7'),
+    array('Symfony/Component/Console', 'http://github.com/symfony/Console.git', 'v2.0.7'),
+    array('Symfony/Component/Finder', 'http://github.com/symfony/Finder.git', 'v2.0.7'),
+    array('Symfony/Component/Yaml', 'http://github.com/symfony/Yaml.git', 'v2.0.7'),
 );
 
 foreach ($deps22x as $dep) {

+ 14 - 0
lib/Gedmo/Translatable/Hydrator/ORM/ObjectHydrator.php

@@ -20,6 +20,7 @@ use Doctrine\ORM\Internal\Hydration\ObjectHydrator as BaseObjectHydrator;
 class ObjectHydrator extends BaseObjectHydrator
 {
     /**
+     * 2.1 version
      * {@inheritdoc}
      */
     protected function _hydrateAll()
@@ -30,4 +31,17 @@ class ObjectHydrator extends BaseObjectHydrator
         $listener->setSkipOnLoad(false);
         return $result;
     }
+
+    /**
+     * 2.2 version
+     * {@inheritdoc}
+     */
+    protected function hydrateAllData()
+    {
+        $listener = $this->_hints[TranslationWalker::HINT_TRANSLATION_LISTENER];
+        $listener->setSkipOnLoad(true);
+        $result = parent::hydrateAllData();
+        $listener->setSkipOnLoad(false);
+        return $result;
+    }
 }

+ 14 - 0
lib/Gedmo/Translatable/Hydrator/ORM/SimpleObjectHydrator.php

@@ -20,6 +20,7 @@ use Doctrine\ORM\Internal\Hydration\SimpleObjectHydrator as BaseSimpleObjectHydr
 class SimpleObjectHydrator extends BaseSimpleObjectHydrator
 {
     /**
+     * 2.1 version
      * {@inheritdoc}
      */
     protected function _hydrateAll()
@@ -30,4 +31,17 @@ class SimpleObjectHydrator extends BaseSimpleObjectHydrator
         $listener->setSkipOnLoad(false);
         return $result;
     }
+
+    /**
+     * 2.2 version
+     * {@inheritdoc}
+     */
+    protected function hydrateAllData()
+    {
+        $listener = $this->_hints[TranslationWalker::HINT_TRANSLATION_LISTENER];
+        $listener->setSkipOnLoad(true);
+        $result = parent::hydrateAllData();
+        $listener->setSkipOnLoad(false);
+        return $result;
+    }
 }

+ 0 - 3
tests/Gedmo/Tool/BaseTestCaseMongoODM.php

@@ -38,9 +38,6 @@ abstract class BaseTestCaseMongoODM extends \PHPUnit_Framework_TestCase
         if (!class_exists('Mongo')) {
             $this->markTestSkipped('Missing Mongo extension.');
         }
-        if (version_compare(\Doctrine\Common\Version::VERSION, '2.2.0-DEV', '>=')) {
-            $this->markTestSkipped('ODM does not support version 2.2 of doctrine common.');
-        }
     }
 
     /**

+ 0 - 3
tests/Gedmo/Tool/BaseTestCaseOM.php

@@ -86,9 +86,6 @@ abstract class BaseTestCaseOM extends \PHPUnit_Framework_TestCase
         if (!class_exists('Mongo')) {
             $this->markTestSkipped('Missing Mongo extension.');
         }
-        if (version_compare(\Doctrine\Common\Version::VERSION, '2.2.0-DEV', '>=')) {
-            $this->markTestSkipped('ODM does not support version 2.2 of doctrine common.');
-        }
         $conn = new Connection;
         $config = $this->getMockAnnotatedODMMongoDBConfig($dbName, $mappingDriver);
 

+ 4 - 0
tests/bootstrap.php

@@ -59,6 +59,10 @@ Gedmo\Version::checkORMDependencies();
     VENDOR_PATH.'/doctrine-orm/lib/Doctrine/ORM/Mapping/Driver/DoctrineAnnotations.php'
 );
 
+\Doctrine\Common\Annotations\AnnotationRegistry::registerFile(
+    VENDOR_PATH.'/doctrine-mongodb-odm/lib/Doctrine/ODM/MongoDB/Mapping/Annotations/DoctrineAnnotations.php'
+);
+
 \Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace(
     'Gedmo\\Mapping\\Annotation',
     VENDOR_PATH.'/../lib'