/** * testUpdateWithCalculation method * * @return void */ public function testUpdateWithCalculation() { $this->loadFixtures('DataTest'); $model = new DataTest(); $model->deleteAll(true); $result = $model->saveMany(array(array('count' => 5, 'float' => 1.1), array('count' => 3, 'float' => 1.2), array('count' => 4, 'float' => 1.3), array('count' => 1, 'float' => 2.0))); $this->assertFalse(empty($result)); $result = Hash::extract($model->find('all', array('fields' => 'count')), '{n}.DataTest.count'); $this->assertEquals(array(5, 3, 4, 1), $result); $this->assertTrue($model->updateAll(array('count' => 'count + 2'))); $result = Hash::extract($model->find('all', array('fields' => 'count')), '{n}.DataTest.count'); $this->assertEquals(array(7, 5, 6, 3), $result); $this->assertTrue($model->updateAll(array('DataTest.count' => 'DataTest.count - 1'))); $result = Hash::extract($model->find('all', array('fields' => 'count')), '{n}.DataTest.count'); $this->assertEquals(array(6, 4, 5, 2), $result); }