Example #1
0
 /**
  * Ensures that an UPDATE query is properly built.
  */
 public function testUpdateQuery()
 {
     $query = Query::update();
     $options = array('type' => 'UPDATE', 'table' => 'updateTable', 'set' => array('user_id' => 'user_id + 1', 'user_name' => '\'name\''), 'condition' => 'user_id = 100', 'limit' => 1);
     $query->table($options['table'])->set($options['set'])->where($options['condition'])->limit($options['limit']);
     $queryOptions = $query->getOptions();
     foreach ($options as $key => $value) {
         $this->assertArrayHasKey($key, $queryOptions);
         $this->assertEquals($options[$key], $queryOptions[$key]);
     }
 }
Example #2
0
 /**
  * Tests updating data.
  */
 public function testUpdate()
 {
     // Insert some fake data.
     $this->insertFakeData(3);
     $userName = '******';
     // Update the table data.
     $result = Query::update()->table('users')->set(array('user_name' => '{string:user_name}'))->where('user_id = {int:user_id}')->replace(array('user_id' => 1, 'user_name' => $userName))->execute();
     // Make sure it worked!
     $this->assertTrue($result->success());
     $this->assertEquals(1, $result->getAffectedRows());
     // Now we should select the data.
     $result = Query::select()->expr('user_name')->from('users')->where('user_id = {int:user_id}')->replace(array('user_id' => 1))->execute();
     $this->assertTrue($result->success());
     // Make sure it was actually updated.
     $row = $result->fetchAssoc();
     $this->assertArrayHasKey('user_name', $row);
     $this->assertEquals($userName, $row['user_name']);
 }
 /**
  * Tests to ensure the MySQL Driver generates UPDATE queries properly.
  */
 public function testUpdateQuery()
 {
     $query = Query::update()->table('tabletoupdate')->set(array('myName' => '\'newName\''))->where('myUserId = 100')->limit(2);
     $result = MysqlDriver::generateQuery($query->getOptions());
     $this->assertEquals('
     UPDATE tabletoupdate
     SET myName = \'newName\'
     WHERE myUserId = 100
     LIMIT 2', $result);
 }
 /**
  * Creates an instance of UpdateQuery for testing.
  */
 public function setUp()
 {
     $this->updateQuery = Query::update();
 }