Changeset 4789 for trunk/tests/Orm

Show
Ignore:
Timestamp:
08/22/08 10:05:14 (5 months ago)
Author:
romanb
Message:

refactorings. made basic one-one, one-many joins work.

Location:
trunk/tests/Orm
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • trunk/tests/Orm/EntityPersisterTest.php

    r4776 r4789  
    1212    private $_connMock; 
    1313    private $_emMock; 
     14    private $_seqManagerMock; 
    1415     
    1516    protected function setUp() { 
     
    1718        $this->_connMock = new Doctrine_ConnectionMock(array()); 
    1819        $this->_emMock = new Doctrine_EntityManagerMock($this->_connMock); 
     20        $this->_seqManagerMock = new Doctrine_SequenceMock($this->_connMock); 
     21         
    1922        $this->_connMock->setDatabasePlatform(new Doctrine_DatabasePlatformMock()); 
     23        $this->_connMock->setSequenceManager($this->_seqManagerMock); 
    2024         
    2125        $this->_persister = new Doctrine_EntityPersister_Standard( 
     
    2327    } 
    2428     
    25     public function testTest() { 
     29    public function testInsert() { 
    2630        $user = new ForumUser(); 
    2731        $user->username = "romanb"; 
    28          
    2932        $user->avatar = new ForumAvatar(); 
    3033         
     34        $this->_seqManagerMock->autoinc(); //fake identity column autoinc 
     35        $this->_persister->insert($user->avatar); 
     36        $inserts = $this->_connMock->getInserts(); 
     37        //check 
     38        $this->assertEquals(1, count($inserts)); 
     39        $this->assertEquals(0, $user->avatar->id); 
     40        $this->assertTrue(isset($inserts['forum_avatar'])); 
     41        $this->assertEquals(1, count($inserts['forum_avatar'])); 
     42        $this->assertTrue(empty($inserts['forum_avatar'][0])); 
     43         
     44        $this->_seqManagerMock->autoinc(); //fake identity column autoinc 
    3145        $this->_persister->insert($user); 
    32          
    3346        $inserts = $this->_connMock->getInserts(); 
    34         //var_dump($inserts); 
     47        //check 
     48        $this->assertEquals(2, count($inserts)); 
     49        $this->assertEquals(1, $user->id); 
    3550        $this->assertTrue(isset($inserts['forum_user'])); 
    3651        $this->assertEquals(1, count($inserts['forum_user'])); 
    37         $this->assertEquals(1, count($inserts['forum_user'][0])); 
     52        $this->assertEquals(3, count($inserts['forum_user'][0])); 
     53        //username column 
    3854        $this->assertTrue(isset($inserts['forum_user'][0]['username'])); 
    3955        $this->assertEquals('romanb', $inserts['forum_user'][0]['username']); 
     56        //avatar_id join column 
     57        $this->assertTrue(isset($inserts['forum_user'][0]['avatar_id'])); 
     58        $this->assertEquals(0, $inserts['forum_user'][0]['avatar_id']); 
     59        //dtype discriminator column 
     60        $this->assertTrue(isset($inserts['forum_user'][0]['dtype'])); 
     61        $this->assertEquals('user', $inserts['forum_user'][0]['dtype']); 
    4062    } 
    4163     
  • trunk/tests/Orm/Query/SelectSqlGenerationTest.php

    r4785 r4789  
    173173        $this->assertSqlGeneration( 
    174174            'SELECT u.id, a.id FROM CmsUser u LEFT JOIN u.articles a', 
    175             'SELECT cu.id AS cu__id, ca.id AS ca__id FROM cms_user cu LEFT JOIN cms_article ca ON ca.user_id = cu.id WHERE 1 = 1' 
     175            'SELECT cu.id AS cu__id, ca.id AS ca__id FROM cms_user cu LEFT JOIN cms_article ca ON cu.id = ca.user_id WHERE 1 = 1' 
    176176        ); 
    177177    } 
  • trunk/tests/Orm/UnitOfWorkTest.php

    r4723 r4789  
    127127    } 
    128128     
     129    public function testCommitOrder() 
     130    { 
     131        $avatar = new ForumAvatar(); 
     132        $this->_user->avatar = $avatar; 
     133        $this->_unitOfWork->save($this->_user); // save cascaded to avatar 
     134         
     135        $this->assertEquals(2, count($this->_persisterMock->getInserts())); // insert forced 
     136        $this->assertEquals(0, count($this->_persisterMock->getUpdates())); 
     137        $this->assertEquals(0, count($this->_persisterMock->getDeletes())); 
     138        // verify order of inserts()s 
     139        $inserts = $this->_persisterMock->getInserts(); 
     140        $this->assertSame($avatar, $inserts[0]); 
     141        $this->assertSame($this->_user, $inserts[1]); 
     142         
     143        //... 
     144    } 
     145     
    129146    public function testSavingSingleEntityWithSequenceIdGeneratorSchedulesInsert() 
    130147    {