mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-12 22:38:52 +00:00
Merge remote-tracking branch 'rxu3/ticket/12224' into develop
* rxu3/ticket/12224: [ticket/12224] Add assign_block_vars_array() test. [ticket/12224] Add template wrapper method to assign block arrays
This commit is contained in:
commit
235f7c3721
4 changed files with 68 additions and 0 deletions
|
@ -110,6 +110,16 @@ abstract class base implements template
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function assign_block_vars_array($blockname, array $block_vars_array)
|
||||||
|
{
|
||||||
|
$this->context->assign_block_vars_array($blockname, $block_vars_array);
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -199,6 +199,22 @@ class context
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Assign key variable pairs from an array to a whole specified block loop
|
||||||
|
*
|
||||||
|
* @param string $blockname Name of block to assign $block_vars_array to
|
||||||
|
* @param array $block_vars_array An array of hashes of variable name => value pairs
|
||||||
|
*/
|
||||||
|
public function assign_block_vars_array($blockname, array $block_vars_array)
|
||||||
|
{
|
||||||
|
foreach ($block_vars_array as $vararray)
|
||||||
|
{
|
||||||
|
$this->assign_block_vars($blockname, $vararray);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Change already assigned key variable pair (one-dimensional - single loop entry)
|
* Change already assigned key variable pair (one-dimensional - single loop entry)
|
||||||
*
|
*
|
||||||
|
|
|
@ -131,6 +131,14 @@ interface template
|
||||||
*/
|
*/
|
||||||
public function assign_block_vars($blockname, array $vararray);
|
public function assign_block_vars($blockname, array $vararray);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Assign key variable pairs from an array to a whole specified block loop
|
||||||
|
* @param string $blockname Name of block to assign $block_vars_array to
|
||||||
|
* @param array $block_vars_array An array of hashes of variable name => value pairs
|
||||||
|
* @return \phpbb\template\template $this
|
||||||
|
*/
|
||||||
|
public function assign_block_vars_array($blockname, array $block_vars_array);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Change already assigned key variable pair (one-dimensional - single loop entry)
|
* Change already assigned key variable pair (one-dimensional - single loop entry)
|
||||||
*
|
*
|
||||||
|
|
|
@ -562,6 +562,40 @@ EOT
|
||||||
$this->assertEquals($expect, str_replace(array("\n", "\r", "\t"), '', $this->display('test')), 'Ensuring S_NUM_ROWS is correct after modification');
|
$this->assertEquals($expect, str_replace(array("\n", "\r", "\t"), '', $this->display('test')), 'Ensuring S_NUM_ROWS is correct after modification');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function assign_block_vars_array_data()
|
||||||
|
{
|
||||||
|
return array(
|
||||||
|
array(
|
||||||
|
array(
|
||||||
|
'outer' => array(
|
||||||
|
array('VARIABLE' => 'Test assigning block vars array loop 0:'),
|
||||||
|
array('VARIABLE' => 'Test assigning block vars array loop 1:'),
|
||||||
|
),
|
||||||
|
'outer.middle' => array(
|
||||||
|
array('VARIABLE' => '1st iteration',),
|
||||||
|
array('VARIABLE' => '2nd iteration',),
|
||||||
|
array('VARIABLE' => '3rd iteration',),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @dataProvider assign_block_vars_array_data
|
||||||
|
*/
|
||||||
|
public function test_assign_block_vars_array($block_data)
|
||||||
|
{
|
||||||
|
$this->template->set_filenames(array('test' => 'loop_nested.html'));
|
||||||
|
|
||||||
|
foreach ($block_data as $blockname => $block_vars_array)
|
||||||
|
{
|
||||||
|
$this->template->assign_block_vars_array($blockname, $block_vars_array);
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->assertEquals("outer - 0 - Test assigning block vars array loop 0:outer - 1 - Test assigning block vars array loop 1:middle - 0 - 1st iterationmiddle - 1 - 2nd iterationmiddle - 2 - 3rd iteration", $this->display('test'), 'Ensuring assigning block vars array to template is working correctly');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @expectedException Twig_Error_Syntax
|
* @expectedException Twig_Error_Syntax
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Add table
Reference in a new issue