function testSetDeleteUpdateData() { $Item = new Item(); $Item->id = 1; $expected = array('action' => array($Item->order => $Item->order . ' - 1'), 'conditions' => array($Item->order . ' >' => 0)); $Item->setDeleteUpdateData(); $this->assertEqual($Item->Behaviors->Sequence->update, $expected); $GroupedItem = new GroupedItem(); $GroupedItem->id = 1; $expected = array('action' => array($GroupedItem->order => $GroupedItem->order . ' - 1'), 'conditions' => array($GroupedItem->order . ' >' => 0)); $GroupedItem->setDeleteUpdateData(); $this->assertEqual($GroupedItem->Behaviors->Sequence->update, $expected); $MultiGroupedItem = new MultiGroupedItem(); $MultiGroupedItem->id = 1; $expected = array('action' => array($MultiGroupedItem->order => $MultiGroupedItem->order . ' - 1'), 'conditions' => array($MultiGroupedItem->order . ' >' => 0)); $MultiGroupedItem->setDeleteUpdateData(); $this->assertEqual($MultiGroupedItem->Behaviors->Sequence->update, $expected); }
function testEditGroupOrderNotSpecified() { $MultiGroupedItem = new MultiGroupedItem(); $MultiGroupedItem->save(array('MultiGroupedItem' => array('id' => '3', 'group_field_1' => '2', 'group_field_2' => '2'))); $results = $MultiGroupedItem->find('all', array('conditions' => array('OR' => array(array('group_field_1' => 1, 'group_field_2' => 1), array('group_field_1' => 2, 'group_field_2' => 2))), 'order' => '`MultiGroupedItem`.`group_field_1`, `MultiGroupedItem`.`group_field_2`, `MultiGroupedItem`.`order`')); $expected = array(array('MultiGroupedItem' => array('id' => 1, 'name' => 'Group1 1 Group2 1 Item A', 'group_field_1' => 1, 'group_field_2' => 1, 'order' => 0)), array('MultiGroupedItem' => array('id' => 2, 'name' => 'Group1 1 Group2 1 Item B', 'group_field_1' => 1, 'group_field_2' => 1, 'order' => 1)), array('MultiGroupedItem' => array('id' => 4, 'name' => 'Group1 1 Group2 1 Item D', 'group_field_1' => 1, 'group_field_2' => 1, 'order' => 2)), array('MultiGroupedItem' => array('id' => 5, 'name' => 'Group1 1 Group2 1 Item E', 'group_field_1' => 1, 'group_field_2' => 1, 'order' => 3)), array('MultiGroupedItem' => array('id' => 31, 'name' => 'Group1 2 Group2 2 Item A', 'group_field_1' => 2, 'group_field_2' => 2, 'order' => 0)), array('MultiGroupedItem' => array('id' => 32, 'name' => 'Group1 2 Group2 2 Item B', 'group_field_1' => 2, 'group_field_2' => 2, 'order' => 1)), array('MultiGroupedItem' => array('id' => 33, 'name' => 'Group1 2 Group2 2 Item C', 'group_field_1' => 2, 'group_field_2' => 2, 'order' => 2)), array('MultiGroupedItem' => array('id' => 34, 'name' => 'Group1 2 Group2 2 Item D', 'group_field_1' => 2, 'group_field_2' => 2, 'order' => 3)), array('MultiGroupedItem' => array('id' => 35, 'name' => 'Group1 2 Group2 2 Item E', 'group_field_1' => 2, 'group_field_2' => 2, 'order' => 4)), array('MultiGroupedItem' => array('id' => 3, 'name' => 'Group1 1 Group2 1 Item C', 'group_field_1' => 2, 'group_field_2' => 2, 'order' => 5))); $this->assertEqual($results, $expected); }