Changeset 3701 for trunk/tests/Query
- Timestamp:
- 02/03/08 21:29:57 (11 months ago)
- Location:
- trunk/tests/Query
- Files:
-
- 7 modified
-
AggregateValueTestCase.php (modified) (1 diff)
-
DeleteTestCase.php (modified) (8 diffs)
-
JoinCondition2TestCase.php (modified) (2 diffs)
-
JoinTestCase.php (modified) (1 diff)
-
MultipleAggregateValueTestCase.php (modified) (3 diffs)
-
SelectTestCase.php (modified) (9 diffs)
-
WhereTestCase.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/Query/AggregateValueTestCase.php
r3360 r3701 33 33 class Doctrine_Query_AggregateValue_TestCase extends Doctrine_UnitTestCase 34 34 { 35 public function prepareData() 36 { 37 } 35 public function prepareTables() { 36 $this->tables = array('User', 'Phonenumber', 'QueryTest_Item'); 37 parent::prepareTables(); 38 } 39 40 public function prepareData() {} 41 38 42 public function testInitData() 39 43 { -
trunk/tests/Query/DeleteTestCase.php
r2359 r3701 54 54 $q->parseQuery('DELETE FROM Entity'); 55 55 56 $this->assertEqual($q->getQuery(), 'DELETE FROM entity ');56 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE (type = 2 OR type = 1 OR type = 0)'); 57 57 58 58 $q = new Doctrine_Query(); … … 60 60 $q->delete()->from('Entity'); 61 61 62 $this->assertEqual($q->getQuery(), 'DELETE FROM entity ');62 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE (type = 2 OR type = 1 OR type = 0)'); 63 63 } 64 64 public function testDeleteWithCondition() … … 68 68 $q->parseQuery('DELETE FROM Entity WHERE id = 3'); 69 69 70 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE id = 3 ');70 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE id = 3 AND (type = 2 OR type = 1 OR type = 0)'); 71 71 72 72 $q = new Doctrine_Query(); … … 74 74 $q->delete()->from('Entity')->where('id = 3'); 75 75 76 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE id = 3 ');76 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE id = 3 AND (type = 2 OR type = 1 OR type = 0)'); 77 77 } 78 78 public function testDeleteWithLimit() … … 82 82 $q->parseQuery('DELETE FROM Entity LIMIT 20'); 83 83 84 $this->assertEqual($q->getQuery(), 'DELETE FROM entity LIMIT 20');84 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE (type = 2 OR type = 1 OR type = 0) LIMIT 20'); 85 85 86 86 $q = new Doctrine_Query(); … … 88 88 $q->delete()->from('Entity')->limit(20); 89 89 90 $this->assertEqual($q->getQuery(), 'DELETE FROM entity LIMIT 20');90 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE (type = 2 OR type = 1 OR type = 0) LIMIT 20'); 91 91 } 92 92 public function testDeleteWithLimitAndOffset() … … 96 96 $q->parseQuery('DELETE FROM Entity LIMIT 10 OFFSET 20'); 97 97 98 $this->assertEqual($q->getQuery(), 'DELETE FROM entity LIMIT 10 OFFSET 20');98 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE (type = 2 OR type = 1 OR type = 0) LIMIT 10 OFFSET 20'); 99 99 100 100 $q = new Doctrine_Query(); … … 102 102 $q->delete()->from('Entity')->limit(10)->offset(20); 103 103 104 $this->assertEqual($q->getQuery(), 'DELETE FROM entity LIMIT 10 OFFSET 20');104 $this->assertEqual($q->getQuery(), 'DELETE FROM entity WHERE (type = 2 OR type = 1 OR type = 0) LIMIT 10 OFFSET 20'); 105 105 } 106 106 } -
trunk/tests/Query/JoinCondition2TestCase.php
r3517 r3701 35 35 public function prepareTables() 36 36 { 37 $this->tables[] = 'Entity'; 38 $this->tables[] = 'User'; 39 $this->tables[] = 'GroupUser'; 40 $this->tables[] = 'Group'; 37 $this->tables = array('User', 'Groupuser'); 41 38 parent::prepareTables(); 42 39 } … … 45 42 public function prepareData() 46 43 { 47 parent::prepareData(); 48 44 $this->conn->getMapper('User')->clear(); 45 $this->conn->getMapper('Group')->clear(); 46 $this->conn->getMapper('Groupuser')->clear(); 47 48 $zYne = new User(); 49 $zYne->name = 'zYne'; 50 $zYne->save(); 51 49 52 $groups = new Doctrine_Collection('Group'); 50 51 53 $groups[0]->name = 'PHP Users'; 52 53 54 $groups[1]->name = 'Developers'; 54 55 $groups->save(); 56 57 $zYne = Doctrine_Query::create()->from('User u')->where('u.name = ?', 'zYne')->fetchOne(); 58 $zYne->Group[0] = $groups[0]; 59 $zYne->Group[1] = $groups[1]; 55 //$groups->save(); 56 57 $zYne->Group = $groups; 60 58 $zYne->save(); 59 60 /*$q = new Doctrine_Query($this->connection); 61 $q->select('g.*')->from('Groupuser g'); 62 //echo $q->getSql(); 63 var_dump($q->execute(array(), Doctrine::HYDRATE_ARRAY)); 64 echo "<br /><br />";*/ 65 66 //$q = new Doctrine_Query($this->connection); 67 //$q->select('u.id, g.id')->from('User u')->leftJoin('u.Group g')->where('u.name = ?', 'zYne'); 68 //var_dump($q->execute(array(), Doctrine::HYDRATE_ARRAY)); 61 69 } 62 70 -
trunk/tests/Query/JoinTestCase.php
r2397 r3701 140 140 $q->select('e.name')->from('Entity e INNER JOIN e.Entity e2'); 141 141 142 $this->assertEqual($q->getQuery(), 'SELECT e.id AS e__id, e.name AS e__name FROM entity e INNER JOIN entity_reference e3 ON e.id = e3.entity1 OR e.id = e3.entity2 INNER JOIN entity e2 ON (e2.id = e3.entity2 OR e2.id = e3.entity1) AND e2.id != e.id ');142 $this->assertEqual($q->getQuery(), 'SELECT e.id AS e__id, e.name AS e__name FROM entity e INNER JOIN entity_reference e3 ON e.id = e3.entity1 OR e.id = e3.entity2 INNER JOIN entity e2 ON (e2.id = e3.entity2 OR e2.id = e3.entity1) AND e2.id != e.id WHERE (e.type = 2 AND (e2.type = 2 OR e2.type IS NULL))'); 143 143 } 144 144 -
trunk/tests/Query/MultipleAggregateValueTestCase.php
r2388 r3701 34 34 class Doctrine_Query_MultipleAggregateValue_TestCase extends Doctrine_UnitTestCase 35 35 { 36 public function prepareTables() 37 { 38 $this->tables = array('User', 'Email', 'Album', 'Book'); 39 parent::prepareTables(); 40 } 41 36 42 public function prepareData() 37 { }38 public function testInitData()39 43 { 40 44 $user = new User(); … … 58 62 $query->where("u.name = 'jon'"); 59 63 $query->limit(1); 60 64 61 65 $user = $query->execute()->getFirst(); 62 66 … … 72 76 $this->assertEqual($num_books, 2); 73 77 } 78 74 79 public function testMultipleAggregateValuesWithArrayFetching() 75 80 { -
trunk/tests/Query/SelectTestCase.php
r2490 r3701 33 33 class Doctrine_Query_Select_TestCase extends Doctrine_UnitTestCase 34 34 { 35 /** 35 public function prepareTables() { 36 $this->tables = array('Email', 'Phonenumber', 'Entity', 'Groupuser'); 37 parent::prepareTables(); 38 } 39 40 public function prepareData() { 41 42 $groups = new Doctrine_Collection('Group'); 43 $groups[0]->name = 'Drama Actors'; 44 $groups[1]->name = 'Quality Actors'; 45 $groups[2]->name = 'Action Actors'; 46 $groups[2]['Phonenumber'][0]->phonenumber = '123 123'; 47 $groups->save(); 48 49 $users = new Doctrine_Collection('User'); 50 51 $users[0]->name = 'zYne'; 52 $users[0]['Email']->address = 'zYne@example.com'; 53 $users[0]['Phonenumber'][0]->phonenumber = '123 123'; 54 55 $users[1]->name = 'Arnold Schwarzenegger'; 56 $users[1]->Email->address = 'arnold@example.com'; 57 $users[1]['Phonenumber'][0]->phonenumber = '123 123'; 58 $users[1]['Phonenumber'][1]->phonenumber = '456 456'; 59 $users[1]->Phonenumber[2]->phonenumber = '789 789'; 60 $users[1]->Group[0] = $groups[2]; 61 62 $users[2]->name = 'Michael Caine'; 63 $users[2]->Email->address = 'caine@example.com'; 64 $users[2]->Phonenumber[0]->phonenumber = '123 123'; 65 66 $users[3]->name = 'Takeshi Kitano'; 67 $users[3]->Email->address = 'kitano@example.com'; 68 $users[3]->Phonenumber[0]->phonenumber = '111 222 333'; 69 70 $users[4]->name = 'Sylvester Stallone'; 71 $users[4]->Email->address = 'stallone@example.com'; 72 $users[4]->Phonenumber[0]->phonenumber = '111 555 333'; 73 $users[4]['Phonenumber'][1]->phonenumber = '123 213'; 74 $users[4]['Phonenumber'][2]->phonenumber = '444 555'; 75 76 $users[5]->name = 'Kurt Russell'; 77 $users[5]->Email->address = 'russell@example.com'; 78 $users[5]->Phonenumber[0]->phonenumber = '111 222 333'; 79 80 $users[6]->name = 'Jean Reno'; 81 $users[6]->Email->address = 'reno@example.com'; 82 $users[6]->Phonenumber[0]->phonenumber = '111 222 333'; 83 $users[6]['Phonenumber'][1]->phonenumber = '222 123'; 84 $users[6]['Phonenumber'][2]->phonenumber = '123 456'; 85 86 $users[7]->name = 'Edward Furlong'; 87 $users[7]->Email->address = 'furlong@example.com'; 88 $users[7]->Phonenumber[0]->phonenumber = '111 567 333'; 89 90 $users->save(); 91 } 92 93 /* 36 94 public function testParseSelect() 37 95 { … … 135 193 } 136 194 } 137 195 /* 138 196 public function testAggregateFunctionValueHydration() 139 197 { … … 160 218 $this->assertEqual($q->getQuery(), 'SELECT e.id AS e__id, e.name AS e__name, e.loginname AS e__loginname, e.password AS e__password, e.type AS e__type, e.created AS e__created, e.updated AS e__updated, e.email_id AS e__email_id FROM entity e WHERE (e.type = 0)'); 161 219 } 220 162 221 public function testSingleComponentWithMultipleColumns() 163 222 { … … 168 227 $this->assertEqual($q->getQuery(), 'SELECT e.id AS e__id, e.name AS e__name, e.type AS e__type FROM entity e WHERE (e.type = 0)'); 169 228 } 229 170 230 public function testMultipleComponentsWithAsterisk() 171 231 { … … 176 236 $this->assertEqual($q->getQuery(),'SELECT e.id AS e__id, e.name AS e__name, e.loginname AS e__loginname, e.password AS e__password, e.type AS e__type, e.created AS e__created, e.updated AS e__updated, e.email_id AS e__email_id, p.id AS p__id, p.phonenumber AS p__phonenumber, p.entity_id AS p__entity_id FROM entity e LEFT JOIN phonenumber p ON e.id = p.entity_id WHERE (e.type = 0)'); 177 237 } 238 178 239 public function testMultipleComponentsWithMultipleColumns() 179 240 { … … 184 245 $this->assertEqual($q->getQuery(),'SELECT e.id AS e__id, e.name AS e__name, p.id AS p__id FROM entity e LEFT JOIN phonenumber p ON e.id = p.entity_id WHERE (e.type = 0)'); 185 246 } 247 186 248 public function testAggregateFunctionValueHydrationWithAliases() 187 249 { … … 199 261 $this->assertEqual($users[4]->Phonenumber[0]->count, 3); 200 262 } 263 201 264 public function testMultipleAggregateFunctionValueHydrationWithAliases() 202 265 { … … 218 281 $this->assertEqual($users[4]->Phonenumber[0]->max, '444 555'); 219 282 } 283 220 284 public function testMultipleAggregateFunctionValueHydrationWithAliasesAndCleanRecords() 221 285 { … … 243 307 $this->assertEqual($users[3]->Phonenumber[0]->max, '111 222 333'); 244 308 $this->assertEqual($users[4]->Phonenumber[0]->max, '444 555'); 245 } 309 }*/ 246 310 247 311 } -
trunk/tests/Query/WhereTestCase.php
r3029 r3701 38 38 public function prepareTables() 39 39 { 40 $this->tables = array('Entity', 'EnumTest', 'Group User', 'Account', 'Book');40 $this->tables = array('Entity', 'EnumTest', 'Groupuser', 'Account', 'Book'); 41 41 parent::prepareTables(); 42 42 }