Skip to content

Commit 39f2f0e

Browse files
committed
Merge branch 'backport/#1202-backport-null-column-option-values' into 2.4
2 parents f45cf26 + a5a7c87 commit 39f2f0e

File tree

3 files changed

+31
-1
lines changed

3 files changed

+31
-1
lines changed

lib/Doctrine/ORM/Tools/SchemaTool.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,7 @@ private function gatherColumn($class, array $mapping, Table $table)
430430
$knownOptions = array('comment', 'unsigned', 'fixed', 'default');
431431

432432
foreach ($knownOptions as $knownOption) {
433-
if ( isset($mapping['options'][$knownOption])) {
433+
if (array_key_exists($knownOption, $mapping['options'])) {
434434
$options[$knownOption] = $mapping['options'][$knownOption];
435435

436436
unset($mapping['options'][$knownOption]);
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
namespace Doctrine\Tests\Models\NullDefault;
4+
5+
/** @Entity */
6+
class NullDefaultColumn
7+
{
8+
/** @Id @GeneratedValue @Column(type="integer") */
9+
public $id;
10+
11+
/** @Column(options={"default":NULL}) */
12+
public $nullDefault;
13+
}

tests/Doctrine/Tests/ORM/Tools/SchemaToolTest.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,23 @@ public function testPostGenerateEvents()
101101
$this->assertEquals(count($classes), $listener->tableCalls);
102102
$this->assertTrue($listener->schemaCalled);
103103
}
104+
105+
public function testNullDefaultNotAddedToCustomSchemaOptions()
106+
{
107+
$em = $this->_getTestEntityManager();
108+
$schemaTool = new SchemaTool($em);
109+
110+
$classes = array(
111+
$em->getClassMetadata('Doctrine\Tests\Models\NullDefault\NullDefaultColumn'),
112+
);
113+
114+
$customSchemaOptions = $schemaTool->getSchemaFromMetadata($classes)
115+
->getTable('NullDefaultColumn')
116+
->getColumn('nullDefault')
117+
->getCustomSchemaOptions();
118+
119+
$this->assertSame(array(), $customSchemaOptions);
120+
}
104121
}
105122

106123
/**

0 commit comments

Comments
 (0)