mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-12 11:44:08 +02:00
[ticket/11495] Split get_branch_data into multiple methods
PHPBB3-11495
This commit is contained in:
@@ -11,62 +11,88 @@ require_once dirname(__FILE__) . '/set_forum_base.php';
|
||||
|
||||
class phpbb_tests_nestedset_set_forum_get_data_test extends phpbb_tests_nestedset_set_forum_base
|
||||
{
|
||||
public function get_branch_data_data()
|
||||
public function get_full_branch_data_data()
|
||||
{
|
||||
return array(
|
||||
array(1, 'all', true, true, array(1, 2, 3)),
|
||||
array(1, 'all', true, false, array(2, 3)),
|
||||
array(1, 'all', false, true, array(3, 2, 1)),
|
||||
array(1, 'all', false, false, array(3, 2)),
|
||||
array(1, true, true, array(1, 2, 3)),
|
||||
array(1, true, false, array(2, 3)),
|
||||
array(1, false, true, array(3, 2, 1)),
|
||||
array(1, false, false, array(3, 2)),
|
||||
|
||||
array(1, 'parents', true, true, array(1)),
|
||||
array(1, 'parents', true, false, array()),
|
||||
array(1, 'parents', false, true, array(1)),
|
||||
array(1, 'parents', false, false, array()),
|
||||
array(2, true, true, array(1, 2)),
|
||||
array(2, true, false, array(1)),
|
||||
array(2, false, true, array(2, 1)),
|
||||
array(2, false, false, array(1)),
|
||||
|
||||
array(1, 'children', true, true, array(1, 2, 3)),
|
||||
array(1, 'children', true, false, array(2, 3)),
|
||||
array(1, 'children', false, true, array(3, 2, 1)),
|
||||
array(1, 'children', false, false, array(3, 2)),
|
||||
|
||||
array(2, 'all', true, true, array(1, 2)),
|
||||
array(2, 'all', true, false, array(1)),
|
||||
array(2, 'all', false, true, array(2, 1)),
|
||||
array(2, 'all', false, false, array(1)),
|
||||
|
||||
array(2, 'parents', true, true, array(1, 2)),
|
||||
array(2, 'parents', true, false, array(1)),
|
||||
array(2, 'parents', false, true, array(2, 1)),
|
||||
array(2, 'parents', false, false, array(1)),
|
||||
|
||||
array(2, 'children', true, true, array(2)),
|
||||
array(2, 'children', true, false, array()),
|
||||
array(2, 'children', false, true, array(2)),
|
||||
array(2, 'children', false, false, array()),
|
||||
|
||||
array(5, 'all', true, true, array(4, 5, 6)),
|
||||
array(5, 'all', true, false, array(4, 6)),
|
||||
array(5, 'all', false, true, array(6, 5, 4)),
|
||||
array(5, 'all', false, false, array(6, 4)),
|
||||
|
||||
array(5, 'parents', true, true, array(4, 5)),
|
||||
array(5, 'parents', true, false, array(4)),
|
||||
array(5, 'parents', false, true, array(5, 4)),
|
||||
array(5, 'parents', false, false, array(4)),
|
||||
|
||||
array(5, 'children', true, true, array(5, 6)),
|
||||
array(5, 'children', true, false, array(6)),
|
||||
array(5, 'children', false, true, array(6, 5)),
|
||||
array(5, 'children', false, false, array(6)),
|
||||
array(5, true, true, array(4, 5, 6)),
|
||||
array(5, true, false, array(4, 6)),
|
||||
array(5, false, true, array(6, 5, 4)),
|
||||
array(5, false, false, array(6, 4)),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider get_branch_data_data
|
||||
* @dataProvider get_full_branch_data_data
|
||||
*/
|
||||
public function test_get_branch_data($forum_id, $type, $order_desc, $include_item, $expected)
|
||||
public function test_get_full_branch_data($forum_id, $order_desc, $include_item, $expected)
|
||||
{
|
||||
$this->assertEquals($expected, array_keys($this->set->get_branch_data($forum_id, $type, $order_desc, $include_item)));
|
||||
$this->assertEquals($expected, array_keys($this->set->get_full_branch_data($forum_id, $order_desc, $include_item)));
|
||||
}
|
||||
|
||||
public function get_parent_branch_data_data()
|
||||
{
|
||||
return array(
|
||||
array(1, true, true, array(1)),
|
||||
array(1, true, false, array()),
|
||||
array(1, false, true, array(1)),
|
||||
array(1, false, false, array()),
|
||||
|
||||
array(2, true, true, array(1, 2)),
|
||||
array(2, true, false, array(1)),
|
||||
array(2, false, true, array(2, 1)),
|
||||
array(2, false, false, array(1)),
|
||||
|
||||
array(5, true, true, array(4, 5)),
|
||||
array(5, true, false, array(4)),
|
||||
array(5, false, true, array(5, 4)),
|
||||
array(5, false, false, array(4)),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider get_parent_branch_data_data
|
||||
*/
|
||||
public function test_get_parent_branch_data($forum_id, $order_desc, $include_item, $expected)
|
||||
{
|
||||
$this->assertEquals($expected, array_keys($this->set->get_parent_branch_data($forum_id, $order_desc, $include_item)));
|
||||
}
|
||||
|
||||
public function get_children_branch_data_data()
|
||||
{
|
||||
return array(
|
||||
array(1, true, true, array(1, 2, 3)),
|
||||
array(1, true, false, array(2, 3)),
|
||||
array(1, false, true, array(3, 2, 1)),
|
||||
array(1, false, false, array(3, 2)),
|
||||
|
||||
array(2, true, true, array(2)),
|
||||
array(2, true, false, array()),
|
||||
array(2, false, true, array(2)),
|
||||
array(2, false, false, array()),
|
||||
|
||||
array(5, true, true, array(5, 6)),
|
||||
array(5, true, false, array(6)),
|
||||
array(5, false, true, array(6, 5)),
|
||||
array(5, false, false, array(6)),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider get_children_branch_data_data
|
||||
*/
|
||||
public function test_get_children_branch_data($forum_id, $order_desc, $include_item, $expected)
|
||||
{
|
||||
$this->assertEquals($expected, array_keys($this->set->get_children_branch_data($forum_id, $order_desc, $include_item)));
|
||||
}
|
||||
|
||||
public function get_parent_data_data()
|
||||
|
Reference in New Issue
Block a user