mirror of
https://github.com/kamilwylegala/cakephp2-php8.git
synced 2025-01-18 18:46:17 +00:00
Adding fix for Ticket #2232.
Added tests for ticket git-svn-id: https://svn.cakephp.org/repo/branches/1.2.x.x@4714 3807eeeb-6ff5-0310-8944-8be069107fe0
This commit is contained in:
parent
41012b86ba
commit
3a62793d0e
3 changed files with 254 additions and 232 deletions
|
@ -787,7 +787,23 @@ class DboSource extends DataSource {
|
|||
$data[$association] = $merge[0][$association];
|
||||
} else {
|
||||
if(is_array($merge[0][$association])){
|
||||
$data[$association] = array_merge($merge[0][$association], $data[$association]);
|
||||
foreach ($data[$association] as $k => $v) {
|
||||
if(!is_array($v)){
|
||||
$dataAssocTmp[$k] = $v;
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($merge[0][$association] as $k => $v) {
|
||||
if(!is_array($v)){
|
||||
$mergeAssocTmp[$k] = $v;
|
||||
}
|
||||
}
|
||||
|
||||
if ($mergeAssocTmp == $dataAssocTmp) {
|
||||
$data[$association] = array_merge($merge[0][$association], $data[$association]);
|
||||
} else {
|
||||
$data[$association][$association] = $merge[0][$association];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -190,11 +190,17 @@ class ModelTest extends CakeTestCase {
|
|||
$this->model =& new CategoryThread();
|
||||
|
||||
$this->db->fullDebug = true;
|
||||
$this->model->recursive = 10;
|
||||
$this->model->id = 1;
|
||||
$data = $this->model->read();
|
||||
|
||||
pr($data);
|
||||
$this->model->recursive = 6;
|
||||
$this->model->id = 7;
|
||||
$result = $this->model->read();
|
||||
$expected = array('CategoryThread' => array('id' => 7, 'parent_id' => 6, 'name' => 'Category 2.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
'ParentCategory' => array('id' => 6, 'parent_id' => 5, 'name' => 'Category 2', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31',
|
||||
'ParentCategory' => array('id' => 5, 'parent_id' => 4, 'name' => 'Category 1.1.1.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31',
|
||||
'ParentCategory' => array('id' => 4, 'parent_id' => 3, 'name' => 'Category 1.1.2', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31',
|
||||
'ParentCategory' => array('id' => 3, 'parent_id' => 2, 'name' => 'Category 1.1.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31',
|
||||
'ParentCategory' => array('id' => 2, 'parent_id' => 1, 'name' => 'Category 1.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31',
|
||||
'ParentCategory' => array('id' => 1, 'parent_id' => 0, 'name' => 'Category 1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31')))))));
|
||||
$this->assertEqual($result, $expected);
|
||||
}
|
||||
|
||||
function testFindAll() {
|
||||
|
|
|
@ -45,9 +45,9 @@ class CategoryThreadFixture extends CakeTestFixture {
|
|||
array('id' => 1, 'parent_id' => 0, 'name' => 'Category 1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 2, 'parent_id' => 1, 'name' => 'Category 1.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 3, 'parent_id' => 2, 'name' => 'Category 1.1.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 4, 'parent_id' => 2, 'name' => 'Category 1.1.2', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 5, 'parent_id' => 3, 'name' => 'Category 1.1.1.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 6, 'parent_id' => 0, 'name' => 'Category 2', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 4, 'parent_id' => 3, 'name' => 'Category 1.1.2', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 5, 'parent_id' => 4, 'name' => 'Category 1.1.1.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 6, 'parent_id' => 5, 'name' => 'Category 2', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31'),
|
||||
array('id' => 7, 'parent_id' => 6, 'name' => 'Category 2.1', 'created' => '2007-03-18 15:30:23', 'updated' => '2007-03-18 15:32:31')
|
||||
);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue