Explorar el Código

fixed yml driver

Dmitry Pikhno hace 13 años
padre
commit
bc0f6e101d

+ 3 - 4
lib/Gedmo/Translatable/Mapping/Driver/Yaml.php

@@ -51,12 +51,11 @@ class Yaml extends File implements Driver
         if (isset($mapping['fields'])) {
             foreach ($mapping['fields'] as $field => $fieldMapping) {
                 if (isset($fieldMapping['gedmo'])) {
-                    if (in_array('translatable', $fieldMapping['gedmo'])) {
+                    if (in_array('translatable', $fieldMapping['gedmo']) || isset($fieldMapping['gedmo']['translatable'])) {
                         // fields cannot be overrided and throws mapping exception
                         $config['fields'][] = $field;
-                        $mappingProperty = $fieldMapping['gedmo']['translatable'];
-                        if (isset($mappingProperty['fallback'])) {
-                            $config['fallback'][$field] = (bool)$mappingProperty['fallback'];
+                        if (isset($fieldMapping['gedmo']['translatable']['fallback'])) {
+                            $config['fallback'][$field] = (bool)$fieldMapping['gedmo']['translatable']['fallback'];
                         }
                     }
                 }

+ 3 - 1
tests/Gedmo/Mapping/TranslatableMappingTest.php

@@ -60,10 +60,12 @@ class TranslatableMappingTest extends \PHPUnit_Framework_TestCase
         $this->assertArrayHasKey('translationClass', $config);
         $this->assertEquals('Translatable\Fixture\PersonTranslation', $config['translationClass']);
         $this->assertArrayHasKey('fields', $config);
-        $this->assertCount(2, $config['fields']);
+        $this->assertCount(3, $config['fields']);
         $this->assertEquals('password', $config['fields'][0]);
         $this->assertEquals('username', $config['fields'][1]);
         $this->assertArrayHasKey('locale', $config);
         $this->assertEquals('localeField', $config['locale']);
+        $this->assertCount(1, $config['fallback']);
+        $this->assertTrue($config['fallback']['company']);
     }
 }