576TestCase.php 1.38 KB
Newer Older
jackbravo's avatar
jackbravo committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
<?php

/**
 * Doctrine_Ticket_587_TestCase
 *
 * @package     Doctrine
 * @author      Joaquin Bravo <jackbravo@gmail.com>
 * @license     http://www.opensource.org/licenses/lgpl-license.php LGPL
 * @category    Object Relational Mapping
 * @link        www.phpdoctrine.com
 * @since       1.0
 * @version     $Revision$
 */

class Doctrine_Ticket_576_TestCase extends Doctrine_UnitTestCase
{
    public function prepareTables()
    {
        $this->tables = array('Entity');
        parent::prepareTables();
    }

    public function prepareData() { }

    public function testInit()
    {
        $entity = new Entity();
        $entity->name = 'myname';
        $entity->loginname = 'test';
        $entity->save();
    }

    public function testBug()
    {
        // load our user and our collection of pages
        $user = Doctrine_Query::create()->from('Entity')->fetchOne();
        $this->assertEqual($user->name, 'myname');
        $this->assertEqual($user->loginname, 'test');

        $user->name = null;
        $this->assertEqual($user->name, null);

        $data = Doctrine_Query::create()
            ->select('name')
            ->from('Entity')
            ->fetchOne(array(), Doctrine::FETCH_ARRAY);

        $user->hydrate($data);
        $this->assertEqual($user->name, 'myname');
        $this->assertEqual($user->loginname, 'test'); // <<----- this is what the bug is about
    }
}