Example #1
0
 function Test_of_transactions()
 {
     $AkTestUser = new AkTestUser();
     //$AkTestUser->_db->debug = true;
     $AkTestUser->transactionStart();
     for ($i = 1; $i <= 5; $i++) {
         $AkTestUser->create(array('user_name' => 'from transaction', 'country' => 100));
     }
     $AkTestUser->transactionFail();
     $this->assertTrue($AkTestUser->transactionHasFailed());
     $AkTestUser->transactionComplete();
     $this->assertFalse($AkTestUser->find('all', array('conditions' => "country = 100")), 'Transactions are not working on current database. If you are using MySQL please check that  your server supports InnoDB tables');
     $AkTestUser->transactionStart();
     for ($i = 1; $i <= 5; $i++) {
         $AkTestUser->create(array('user_name' => 'from transaction', 'country' => $i));
     }
     $this->assertFalse($AkTestUser->transactionHasFailed());
     $AkTestUser->transactionComplete();
     $this->assertEqual(count($AkTestUser->find('all', array('conditions' => "user_name = 'from transaction'"))), 5);
     //$AkTestUser->_db->debug = false;
 }