/** * testBehaviorMethodDispatchingWithData method * * @return void */ public function testBehaviorMethodDispatchingWithData() { $Apple = new Apple(); $Apple->Behaviors->attach('Test'); $Apple->set('field', 'value'); $this->assertTrue($Apple->testData()); $this->assertTrue($Apple->data['Apple']['field_2']); $this->assertTrue($Apple->testData('one', 'two', 'three', 'four', 'five', 'six')); }
/** * testDeconstructFields with datetime, timestamp, and date fields * * @return void */ public function testDeconstructFieldsDateTime() { $this->skipIf($this->db instanceof Sqlserver, 'This test is not compatible with SQL Server.'); $this->loadFixtures('Apple'); $TestModel = new Apple(); //test null/empty values first $data['Apple']['created']['year'] = ''; $data['Apple']['created']['month'] = ''; $data['Apple']['created']['day'] = ''; $data['Apple']['created']['hour'] = ''; $data['Apple']['created']['min'] = ''; $data['Apple']['created']['sec'] = ''; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['date']['year'] = ''; $data['Apple']['date']['month'] = ''; $data['Apple']['date']['day'] = ''; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('date' => '')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['year'] = '2007'; $data['Apple']['created']['month'] = '08'; $data['Apple']['created']['day'] = '20'; $data['Apple']['created']['hour'] = ''; $data['Apple']['created']['min'] = ''; $data['Apple']['created']['sec'] = ''; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '2007-08-20 00:00:00')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['year'] = '2007'; $data['Apple']['created']['month'] = '08'; $data['Apple']['created']['day'] = '20'; $data['Apple']['created']['hour'] = '10'; $data['Apple']['created']['min'] = '12'; $data['Apple']['created']['sec'] = ''; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '2007-08-20 10:12:00')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['year'] = '2007'; $data['Apple']['created']['month'] = ''; $data['Apple']['created']['day'] = '12'; $data['Apple']['created']['hour'] = '20'; $data['Apple']['created']['min'] = ''; $data['Apple']['created']['sec'] = ''; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['hour'] = '20'; $data['Apple']['created']['min'] = '33'; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['hour'] = '20'; $data['Apple']['created']['min'] = '33'; $data['Apple']['created']['sec'] = '33'; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['hour'] = '13'; $data['Apple']['created']['min'] = '00'; $data['Apple']['date']['year'] = '2006'; $data['Apple']['date']['month'] = '12'; $data['Apple']['date']['day'] = '25'; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '', 'date' => '2006-12-25')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['year'] = '2007'; $data['Apple']['created']['month'] = '08'; $data['Apple']['created']['day'] = '20'; $data['Apple']['created']['hour'] = '10'; $data['Apple']['created']['min'] = '12'; $data['Apple']['created']['sec'] = '09'; $data['Apple']['date']['year'] = '2006'; $data['Apple']['date']['month'] = '12'; $data['Apple']['date']['day'] = '25'; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '2007-08-20 10:12:09', 'date' => '2006-12-25')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['year'] = '--'; $data['Apple']['created']['month'] = '--'; $data['Apple']['created']['day'] = '--'; $data['Apple']['created']['hour'] = '--'; $data['Apple']['created']['min'] = '--'; $data['Apple']['created']['sec'] = '--'; $data['Apple']['date']['year'] = '--'; $data['Apple']['date']['month'] = '--'; $data['Apple']['date']['day'] = '--'; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '', 'date' => '')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['created']['year'] = '2007'; $data['Apple']['created']['month'] = '--'; $data['Apple']['created']['day'] = '20'; $data['Apple']['created']['hour'] = '10'; $data['Apple']['created']['min'] = '12'; $data['Apple']['created']['sec'] = '09'; $data['Apple']['date']['year'] = '2006'; $data['Apple']['date']['month'] = '12'; $data['Apple']['date']['day'] = '25'; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('created' => '', 'date' => '2006-12-25')); $this->assertEquals($expected, $TestModel->data); $data = array(); $data['Apple']['date']['year'] = '2006'; $data['Apple']['date']['month'] = '12'; $data['Apple']['date']['day'] = '25'; $TestModel->data = null; $TestModel->set($data); $expected = array('Apple' => array('date' => '2006-12-25')); $this->assertEquals($expected, $TestModel->data); $db = ConnectionManager::getDataSource('test'); $data = array(); $data['Apple']['modified'] = $db->expression('NOW()'); $TestModel->data = null; $TestModel->set($data); $this->assertEquals($TestModel->data, $data); }
/** * testBehaviorMethodDispatchingWithData method * * @access public * @return void */ function testBehaviorMethodDispatchingWithData() { $Apple = new Apple(); $Apple->Behaviors->attach('Test'); $Apple->set('field', 'value'); $this->assertTrue($Apple->testData()); $this->assertTrue($Apple->data['Apple']['field_2']); }