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 testEditGroupOrderSpecified() { $GroupedItem = new GroupedItem(); $GroupedItem->save(array('GroupedItem' => array('id' => '3', 'group_field' => '2', 'order' => '2'))); $results = $GroupedItem->find('all', array('conditions' => array('group_field' => array(1, 2)), 'order' => '`GroupedItem`.`group_field`, `GroupedItem`.`order`')); $expected = array(array('GroupedItem' => array('id' => 1, 'name' => 'Group 1 Item A', 'group_field' => 1, 'order' => 0)), array('GroupedItem' => array('id' => 2, 'name' => 'Group 1 Item B', 'group_field' => 1, 'order' => 1)), array('GroupedItem' => array('id' => 4, 'name' => 'Group 1 Item D', 'group_field' => 1, 'order' => 2)), array('GroupedItem' => array('id' => 5, 'name' => 'Group 1 Item E', 'group_field' => 1, 'order' => 3)), array('GroupedItem' => array('id' => 6, 'name' => 'Group 2 Item A', 'group_field' => 2, 'order' => 0)), array('GroupedItem' => array('id' => 7, 'name' => 'Group 2 Item B', 'group_field' => 2, 'order' => 1)), array('GroupedItem' => array('id' => 3, 'name' => 'Group 1 Item C', 'group_field' => 2, 'order' => 2)), array('GroupedItem' => array('id' => 8, 'name' => 'Group 2 Item C', 'group_field' => 2, 'order' => 3)), array('GroupedItem' => array('id' => 9, 'name' => 'Group 2 Item D', 'group_field' => 2, 'order' => 4)), array('GroupedItem' => array('id' => 10, 'name' => 'Group 2 Item E', 'group_field' => 2, 'order' => 5))); $this->assertEqual($results, $expected); }