diff --git a/lib/Doctrine/ClassMetadata.php b/lib/Doctrine/ClassMetadata.php index f1bbba4a3..38ce5e425 100644 --- a/lib/Doctrine/ClassMetadata.php +++ b/lib/Doctrine/ClassMetadata.php @@ -540,14 +540,12 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable } /** - * getColumnName + * Gets a column name for a field name. + * If the column name for the field cannot be found, the given field name + * is returned. * - * returns a column name for a field name. - * if the column name for the field cannot be found - * this method returns the given field name. - * - * @param string $alias column alias - * @return string column name + * @param string $alias The field name. + * @return string The column name. */ public function getColumnName($fieldName) { @@ -556,18 +554,29 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable } /** - * @deprecated + * Gets the mapping of a (regular) fields that holds some data but not a + * reference to another object. + * + * @param string $fieldName The field name. + * @return array The mapping. */ - public function getColumnDefinition($columnName) - { - return $this->getColumnMapping($columnName); - } - public function getFieldMapping($fieldName) { return isset($this->_fieldMappings[$fieldName]) ? $this->_fieldMappings[$fieldName] : false; } + + /** + * Gets the mapping of an association. + * + * @param string $fieldName The field name that represents the association in + * the object model. + * @return Doctrine::ORM::Mapping::AssociationMapping The mapping. + */ + public function getAssociationMapping($fieldName) + { + //... + } /** * Gets the field name for a column name. @@ -588,6 +597,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * * @param string $lcColumnName * @return string + * @todo Better name. */ public function getFieldNameForLowerColumnName($lcColumnName) { @@ -640,16 +650,6 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable throw new Doctrine_ClassMetadata_Exception("No field name found for column name '$lcColumnName' during lookup."); } - /** - * @deprecated - */ - public function setColumns(array $definitions) - { - foreach ($definitions as $name => $options) { - $this->setColumn($name, $options['type'], $options['length'], $options); - } - } - /** * Maps a field of the class to a database column. * @@ -663,6 +663,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * By default the column gets appended. * * @throws Doctrine_ClassMetadata_Exception If trying use wrongly typed parameter. + * @todo Rename to mapField()/addFieldMapping(). */ public function mapColumn($name, $type, $length = null, $options = array()) { @@ -783,14 +784,14 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable } /** - * Checks whether the class mapped class has a default value on any field. + * Checks whether the mapped class has a default value on any field. * * @return boolean TRUE if the entity has a default value on any field, otherwise false. */ - public function hasDefaultValues() + /*public function hasDefaultValues() { return $this->_hasDefaultValues; - } + }*/ /** * getDefaultValueOf @@ -799,7 +800,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * @param string $fieldName * @return mixed */ - public function getDefaultValueOf($fieldName) + /*public function getDefaultValueOf($fieldName) { if ( ! isset($this->_fieldMappings[$fieldName])) { throw new Doctrine_Table_Exception("Couldn't get default value. Column ".$fieldName." doesn't exist."); @@ -809,10 +810,10 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable } else { return null; } - } + }*/ /** - * Gets the identifier (primary key) field(s) of the mapped class. + * Gets the identifier (primary key) field names of the class. * * @return mixed * @deprecated Use getIdentifierFieldNames() @@ -823,7 +824,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable } /** - * Gets the identifier (primary key) field(s) of the mapped class. + * Gets the identifier (primary key) field names of the class. * * @return mixed */ @@ -839,8 +840,11 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable /** * Gets the type of the identifier (primary key) used by the mapped class. The type - * can be either Doctrine::IDENTIFIER_NATURAL, Doctrine::IDENTIFIER_AUTOINCREMENT, - * Doctrine::IDENTIFIER_SEQUENCE or Doctrine::IDENTIFIER_COMPOSITE. + * can be either + * Doctrine::IDENTIFIER_NATURAL, + * Doctrine::IDENTIFIER_AUTOINCREMENT, + * Doctrine::IDENTIFIER_SEQUENCE or + * Doctrine::IDENTIFIER_COMPOSITE. * * @return integer */ @@ -857,16 +861,6 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable $this->_identifierType = $type; } - /** - * hasColumn - * @return boolean - * @deprecated - */ - public function hasColumn($columnName) - { - return isset($this->_fieldNames[$columnName]); - } - public function hasMappedColumn($columnName) { return isset($this->_fieldNames[$columnName]); @@ -885,14 +879,14 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * @param string $fieldName * @return array */ - public function getEnumValues($fieldName) + /*public function getEnumValues($fieldName) { if (isset($this->_fieldMappings[$fieldName]['values'])) { return $this->_fieldMappings[$fieldName]['values']; } else { return array(); } - } + }*/ /** * enumValue @@ -901,7 +895,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * @param integer $index * @return mixed */ - public function enumValue($fieldName, $index) + /*public function enumValue($fieldName, $index) { if ($index instanceof Doctrine_Null) { return $index; @@ -921,7 +915,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable $this->_enumValues[$fieldName][$index] = $enumValue; return $enumValue; - } + }*/ /** * enumIndex @@ -930,7 +924,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * @param mixed $value * @return mixed */ - public function enumIndex($fieldName, $value) + /*public function enumIndex($fieldName, $value) { $values = $this->getEnumValues($fieldName); $index = array_search($value, $values); @@ -939,7 +933,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable } return $value; - } + }*/ /** * getColumnCount @@ -947,23 +941,24 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * @return integer the number of columns in this table * @deprecated */ - public function getColumnCount() + /*public function getColumnCount() { return $this->_columnCount; - } + }*/ /** * getMappedColumnCount * * @return integer the number of mapped columns in the class. */ - public function getMappedColumnCount() + public function getMappedFieldCount() { return $this->_columnCount; } /** - * + * Gets the custom accessor of a field. + * * @return string The name of the accessor (getter) method or NULL if the field does * not have a custom accessor. */ @@ -974,7 +969,8 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable } /** - * + * Gets the custom mutator of a field. + * * @return string The name of the mutator (setter) method or NULL if the field does * not have a custom mutator. */ @@ -983,28 +979,12 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable return isset($this->_fieldMappings[$fieldName]['mutator']) ? $this->_fieldMappings[$fieldName]['mutator'] : null; } - - /** - * returns all columns and their definitions - * - * @return array - * @deprecated - */ - public function getColumns() - { - return $this->_fieldMappings; - } - - /** - * Gets all mapped columns and their mapping definitions. - * - * @return array - */ - public function getMappedColumns() - { - return $this->_fieldMappings; - } + /** + * Gets all field mappings. + * + * @return unknown + */ public function getFieldMappings() { return $this->_fieldMappings; @@ -1016,7 +996,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * * @return boolean */ - public function removeColumn($fieldName) + /*public function removeColumn($fieldName) { $columnName = array_search($fieldName, $this->_fieldNames); @@ -1029,7 +1009,7 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable $this->_columnCount--; return false; - } + }*/ /** * returns an array containing all the column names. @@ -1076,35 +1056,12 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable * @return mixed array on success, false on failure * @deprecated */ - public function getDefinitionOf($fieldName) + /*public function getDefinitionOf($fieldName) { $columnName = $this->getColumnName($fieldName); return $this->getColumnDefinition($columnName); - } - - /** - * Gets the mapping information for a field. - * - * @param string $fieldName - * @return array - */ - public function getMappingForField($fieldName) - { - return $this->_fieldMappings[$fieldName]; - } - - /** - * getTypeOf - * - * @return mixed string on success, false on failure - * @deprecated - */ - public function getTypeOf($fieldName) - { - - return $this->getTypeOfColumn($this->getColumnName($fieldName)); - } + }*/ /** * Gets the type of a field. @@ -1163,72 +1120,6 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable //... } - public function bindRelation($args, $type) - { - return $this->bind($args, $type); - } - - /** - * DESCRIBE WHAT THIS METHOD DOES, PLEASE! - * - * @todo Name proposal: addRelation - */ - public function bind($args, $type) - { - $options = array(); - $options['type'] = $type; - - if ( ! isset($args[1])) { - $args[1] = array(); - } - if ( ! is_array($args[1])) { - try { - throw new Exception(); - } catch (Exception $e) { - echo $e->getTraceAsString(); - } - } - $options = array_merge($args[1], $options); - $this->_parser->bind($args[0], $options); - } - - /** - * hasRelation - * - * @param string $alias the relation to check if exists - * @return boolean true if the relation exists otherwise false - */ - public function hasRelation($alias) - { - return $this->_parser->hasRelation($alias); - } - - /** - * getRelation - * - * @param string $alias relation alias - */ - public function getRelation($alias, $recursive = true) - { - return $this->_parser->getRelation($alias, $recursive); - } - - public function getRelationParser() - { - return $this->_parser; - } - - /** - * getRelations - * returns an array containing all relation objects - * - * @return array an array of Doctrine_Relation objects - */ - public function getRelations() - { - return $this->_parser->getRelations(); - } - /** * getBehaviors * returns all behaviors attached to the class. @@ -2058,7 +1949,72 @@ class Doctrine_ClassMetadata implements Doctrine_Configurable, Serializable $this->_attributes[$name] = $value; } } + + /* The following stuff needs to be touched for the association mapping rewrite */ + + public function bindRelation($args, $type) + { + return $this->bind($args, $type); + } + /** + * @todo Relation mapping rewrite. + */ + public function bind($args, $type) + { + $options = array(); + $options['type'] = $type; + + if ( ! isset($args[1])) { + $args[1] = array(); + } + if ( ! is_array($args[1])) { + try { + throw new Exception(); + } catch (Exception $e) { + echo $e->getTraceAsString(); + } + } + $options = array_merge($args[1], $options); + $this->_parser->bind($args[0], $options); + } + + /** + * hasRelation + * + * @param string $alias the relation to check if exists + * @return boolean true if the relation exists otherwise false + */ + public function hasRelation($alias) + { + return $this->_parser->hasRelation($alias); + } + + /** + * getRelation + * + * @param string $alias relation alias + */ + public function getRelation($alias, $recursive = true) + { + return $this->_parser->getRelation($alias, $recursive); + } + + public function getRelationParser() + { + return $this->_parser; + } + + /** + * getRelations + * returns an array containing all relation objects + * + * @return array an array of Doctrine_Relation objects + */ + public function getRelations() + { + return $this->_parser->getRelations(); + } /** * diff --git a/lib/Doctrine/ClassMetadata/Factory.php b/lib/Doctrine/ClassMetadata/Factory.php index d19eca367..cba11a2af 100644 --- a/lib/Doctrine/ClassMetadata/Factory.php +++ b/lib/Doctrine/ClassMetadata/Factory.php @@ -130,7 +130,7 @@ class Doctrine_ClassMetadata_Factory protected function _addInheritedFields($subClass, $parentClass) { - foreach ($parentClass->getColumns() as $name => $definition) { + foreach ($parentClass->getFieldMappings() as $name => $definition) { $fullName = "$name as " . $parentClass->getFieldName($name); $definition['inherited'] = true; $subClass->mapColumn( @@ -246,7 +246,7 @@ class Doctrine_ClassMetadata_Factory case 1: // A single identifier is in the mapping foreach ($class->getIdentifier() as $pk) { $columnName = $class->getColumnName($pk); - $thisColumns = $class->getColumns(); + $thisColumns = $class->getFieldMappings(); $e = $thisColumns[$columnName]; $found = false; diff --git a/lib/Doctrine/Entity.php b/lib/Doctrine/Entity.php index 2fcfe95d8..86d50763b 100644 --- a/lib/Doctrine/Entity.php +++ b/lib/Doctrine/Entity.php @@ -342,12 +342,12 @@ abstract class Doctrine_Entity extends Doctrine_Access implements Serializable $this->_data = array_merge($this->_data, $this->_id); foreach ($this->_data as $k => $v) { - if ($v instanceof Doctrine_Entity && $this->_class->getTypeOf($k) != 'object') { + if ($v instanceof Doctrine_Entity && $this->_class->getTypeOfField($k) != 'object') { unset($vars['_data'][$k]); } else if ($v === Doctrine_Null::$INSTANCE) { unset($vars['_data'][$k]); } else { - switch ($this->_class->getTypeOf($k)) { + switch ($this->_class->getTypeOfField($k)) { case 'array': case 'object': $vars['_data'][$k] = serialize($vars['_data'][$k]); @@ -400,7 +400,7 @@ abstract class Doctrine_Entity extends Doctrine_Access implements Serializable $this->_class = $this->_em->getClassMetadata($this->_entityName); foreach ($this->_data as $k => $v) { - switch ($this->_class->getTypeOf($k)) { + switch ($this->_class->getTypeOfField($k)) { case 'array': case 'object': $this->_data[$k] = unserialize($this->_data[$k]); @@ -1024,7 +1024,7 @@ abstract class Doctrine_Entity extends Doctrine_Access implements Serializable } foreach ($modifiedFields as $field) { - $type = $this->_class->getTypeOf($field); + $type = $this->_class->getTypeOfField($field); if ($this->_data[$field] === Doctrine_Null::$INSTANCE) { $dataSet[$field] = null; diff --git a/lib/Doctrine/HydratorNew.php b/lib/Doctrine/HydratorNew.php index 0b25a64f8..807c399bc 100644 --- a/lib/Doctrine/HydratorNew.php +++ b/lib/Doctrine/HydratorNew.php @@ -109,7 +109,7 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract // Used variables during hydration reset($this->_queryComponents); $rootAlias = key($this->_queryComponents); - $rootComponentName = $this->_queryComponents[$rootAlias]['metadata']->getClassName(); + $rootEntityName = $this->_queryComponents[$rootAlias]['metadata']->getClassName(); // if only one class is involved we can make our lives easier $isSimpleQuery = count($this->_queryComponents) <= 1; // Lookup map to quickly discover/lookup existing records in the result @@ -128,7 +128,7 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract if ($parserResult->isMixedQuery() || $hydrationMode == Doctrine::HYDRATE_SCALAR) { $result = array(); } else { - $result = $driver->getElementCollection($rootComponentName); + $result = $driver->getElementCollection($rootEntityName); } if ($stmt === false || $stmt === 0) { @@ -139,7 +139,7 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract foreach ($this->_queryComponents as $dqlAlias => $component) { // disable lazy-loading of related elements during hydration $component['metadata']->setAttribute('loadReferences', false); - $componentName = $component['metadata']->getClassName(); + $entityName = $component['metadata']->getClassName(); $identifierMap[$dqlAlias] = array(); $resultPointers[$dqlAlias] = array(); $idTemplate[$dqlAlias] = ''; @@ -163,22 +163,21 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract continue; } + // From here on its all about graph construction + + // 1) Initialize $id = $idTemplate; // initialize the id-memory $nonemptyComponents = array(); $rowData = $this->_gatherRowData($data, $cache, $id, $nonemptyComponents); - // - // hydrate the data of the root entity from the current row - // - $class = $this->_queryComponents[$rootAlias]['metadata']; - $componentName = $class->getComponentName(); + // 2) Hydrate the data of the root entity from the current row + //$class = $this->_queryComponents[$rootAlias]['metadata']; + //$entityName = $class->getComponentName(); // Check for an existing element $index = false; if ($isSimpleQuery || ! isset($identifierMap[$rootAlias][$id[$rootAlias]])) { - $element = $driver->getElement($rowData[$rootAlias], $componentName); - - // do we need to index by a custom field? + $element = $driver->getElement($rowData[$rootAlias], $rootEntityName); if ($field = $this->_getCustomIndexField($rootAlias)) { if ($parserResult->isMixedQuery()) { $result[] = array( @@ -198,22 +197,22 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract } else { $index = $identifierMap[$rootAlias][$id[$rootAlias]]; } - $this->_setLastElement($resultPointers, $result, $index, $rootAlias, false); + $this->_updateResultPointer($resultPointers, $result, $index, $rootAlias, false); unset($rowData[$rootAlias]); // end hydrate data of the root component for the current row - // Check for scalar values + // Extract scalar values. They're appended at the end. if (isset($rowData['scalars'])) { $scalars = $rowData['scalars']; unset($rowData['scalars']); } - // now hydrate the rest of the data found in the current row, that belongs to other - // (related) classes. + // 3) Now hydrate the rest of the data found in the current row, that + // belongs to other (related) Entities. foreach ($rowData as $dqlAlias => $data) { $index = false; $map = $this->_queryComponents[$dqlAlias]; - $componentName = $map['metadata']->getClassName(); + $entityName = $map['metadata']->getClassName(); $parent = $map['parent']; $relation = $map['relation']; $relationAlias = $relation->getAlias(); @@ -227,7 +226,7 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract } else if (isset($resultPointers[$parent])) { $baseElement =& $resultPointers[$parent]; } else { - unset($prev[$dqlAlias]); // Ticket #1228 + unset($resultPointers[$dqlAlias]); // Ticket #1228 continue; } @@ -241,7 +240,7 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract $index = $indexExists ? $identifierMap[$path][$id[$parent]][$id[$dqlAlias]] : false; $indexIsValid = $index !== false ? isset($baseElement[$relationAlias][$index]) : false; if ( ! $indexExists || ! $indexIsValid) { - $element = $driver->getElement($data, $componentName); + $element = $driver->getElement($data, $entityName); if ($field = $this->_getCustomIndexField($dqlAlias)) { $driver->addRelatedIndexedElement($baseElement, $relationAlias, $element, $field); } else { @@ -252,7 +251,7 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract } } else if ( ! isset($baseElement[$relationAlias])) { $driver->setRelatedElement($baseElement, $relationAlias, - $driver->getElementCollection($componentName)); + $driver->getElementCollection($entityName)); } } else { // x-1 relation @@ -263,11 +262,11 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract $driver->getNullPointer()); } else if ( ! $driver->isFieldSet($baseElement, $relationAlias)) { $driver->setRelatedElement($baseElement, $relationAlias, - $driver->getElement($data, $componentName)); + $driver->getElement($data, $entityName)); } } if (($coll =& $driver->getReferenceValue($baseElement, $relationAlias)) !== null) { - $this->_setLastElement($resultPointers, $coll, $index, $dqlAlias, $oneToOne); + $this->_updateResultPointer($resultPointers, $coll, $index, $dqlAlias, $oneToOne); } } @@ -295,27 +294,23 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract } /** - * sets the last element of given data array / collection - * as previous element + * Updates the result pointer for an Entity. The result pointers point to the + * last seen instance of each Entity. This is used for graph construction. * - * @param array $prev The array that contains the pointers to the latest element of each class. - * @param array|Collection The object collection. + * @param array $resultPointers The result pointers. + * @param array|Collection $coll The element. * @param boolean|integer $index Index of the element in the collection. * @param string $dqlAlias * @param boolean $oneToOne Whether it is a single-valued association or not. - * @return void - * @todo Detailed documentation */ - protected function _setLastElement(&$resultPointers, &$coll, $index, $dqlAlias, $oneToOne) + protected function _updateResultPointer(&$resultPointers, &$coll, $index, $dqlAlias, $oneToOne) { if ($coll === $this->_nullObject || $coll === null) { unset($resultPointers[$dqlAlias]); // Ticket #1228 - return false; + return; } if ($index !== false) { - // Link element at $index to previous element for the component - // identified by the DQL alias $alias $resultPointers[$dqlAlias] =& $coll[$index]; return; } @@ -356,10 +351,12 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract if ( ! isset($cache[$key])) { if ($this->_isIgnoredName($key)) continue; - // cache general information like the column name <-> field name mapping - $e = explode('__', $key); - $columnName = strtolower(array_pop($e)); - $cache[$key]['dqlAlias'] = $this->_tableAliases[strtolower(implode('__', $e))]; + // Cache general information like the column name <-> field name mapping + $e = explode(Doctrine_Query_Production::SQLALIAS_SEPARATOR, $key); + $columnName = array_pop($e); + $cache[$key]['dqlAlias'] = $this->_tableAliases[ + implode(Doctrine_Query_Production::SQLALIAS_SEPARATOR, $e) + ]; $classMetadata = $this->_queryComponents[$cache[$key]['dqlAlias']]['metadata']; // check whether it's an aggregate value or a regular field if (isset($this->_queryComponents[$cache[$key]['dqlAlias']]['agg'][$columnName])) { @@ -439,9 +436,11 @@ class Doctrine_HydratorNew extends Doctrine_Hydrator_Abstract if ($this->_isIgnoredName($key)) continue; // cache general information like the column name <-> field name mapping - $e = explode('__', $key); - $columnName = strtolower(array_pop($e)); - $cache[$key]['dqlAlias'] = $this->_tableAliases[strtolower(implode('__', $e))]; + $e = explode(Doctrine_Query_Production::SQLALIAS_SEPARATOR, $key); + $columnName = array_pop($e); + $cache[$key]['dqlAlias'] = $this->_tableAliases[ + implode(Doctrine_Query_Production::SQLALIAS_SEPARATOR, $e) + ]; $classMetadata = $this->_queryComponents[$cache[$key]['dqlAlias']]['metadata']; // check whether it's an aggregate value or a regular field if (isset($this->_queryComponents[$cache[$key]['dqlAlias']]['agg'][$columnName])) { diff --git a/lib/Doctrine/MappingException.php b/lib/Doctrine/MappingException.php new file mode 100644 index 000000000..48933c630 --- /dev/null +++ b/lib/Doctrine/MappingException.php @@ -0,0 +1,17 @@ + \ No newline at end of file diff --git a/lib/Doctrine/Query/Production/PathExpressionEndingWithAsterisk.php b/lib/Doctrine/Query/Production/PathExpressionEndingWithAsterisk.php index 1a3e86b35..c92662df0 100644 --- a/lib/Doctrine/Query/Production/PathExpressionEndingWithAsterisk.php +++ b/lib/Doctrine/Query/Production/PathExpressionEndingWithAsterisk.php @@ -133,7 +133,7 @@ class Doctrine_Query_Production_PathExpressionEndingWithAsterisk extends Doctrin } // Generating the SQL piece - $fields = $this->_queryComponent['metadata']->getMappedColumns(); + $fields = $this->_queryComponent['metadata']->getFieldMappings(); $tableAlias = $parserResult->getTableAliasFromComponentAlias($componentAlias); $str = ''; diff --git a/tests/Orm/Entity/AccessorTestCase.php b/tests/Orm/Entity/AccessorTest.php similarity index 90% rename from tests/Orm/Entity/AccessorTestCase.php rename to tests/Orm/Entity/AccessorTest.php index 863d282f0..9a95c5552 100644 --- a/tests/Orm/Entity/AccessorTestCase.php +++ b/tests/Orm/Entity/AccessorTest.php @@ -1,12 +1,10 @@ username = 'romanb'; $this->assertEquals('romanb?!', $entity1->username); @@ -14,10 +12,14 @@ class Orm_Entity_AccessorTestCase extends Doctrine_OrmTestCase $entity2 = new MagicAccessorMutatorTestEntity(); $entity2->username = 'romanb'; $this->assertEquals('romanb?!', $entity1->username); - } + + } + +/* Local test classes */ + class CustomAccessorMutatorTestEntity extends Doctrine_Entity { public static function initMetadata($class) diff --git a/tests/Orm/Entity/AllTests.php b/tests/Orm/Entity/AllTests.php index 66966bde1..999f61b05 100644 --- a/tests/Orm/Entity/AllTests.php +++ b/tests/Orm/Entity/AllTests.php @@ -6,7 +6,7 @@ if (!defined('PHPUnit_MAIN_METHOD')) { require_once 'lib/DoctrineTestInit.php'; // Tests -require_once 'Orm/Entity/AccessorTestCase.php'; +require_once 'Orm/Entity/AccessorTest.php'; require_once 'Orm/Entity/ConstructorTest.php'; class Orm_Entity_AllTests @@ -20,7 +20,7 @@ class Orm_Entity_AllTests { $suite = new Doctrine_TestSuite('Doctrine Orm Entity Tests'); - $suite->addTestSuite('Orm_Entity_AccessorTestCase'); + $suite->addTestSuite('Orm_Entity_AccessorTest'); $suite->addTestSuite('Orm_Entity_ConstructorTest'); return $suite;