class MenuTreeDataTestCase
Menu tree data related tests.
Hierarchy
- class \DrupalTestCase
- class \DrupalUnitTestCase
- class \MenuTreeDataTestCase
- class \DrupalUnitTestCase
Expanded class hierarchy of MenuTreeDataTestCase
File
View source
class MenuTreeDataTestCase extends DrupalUnitTestCase {
/**
* Dummy link structure acceptable for menu_tree_data().
*/
var $links = array(
1 => array('mlid' => 1, 'depth' => 1),
2 => array('mlid' => 2, 'depth' => 1),
3 => array('mlid' => 3, 'depth' => 2),
4 => array('mlid' => 4, 'depth' => 3),
5 => array('mlid' => 5, 'depth' => 1),
);
public static function getInfo() {
return array(
'name' => 'Menu tree generation',
'description' => 'Tests recursive menu tree generation functions.',
'group' => 'Menu',
);
}
/**
* Validate the generation of a proper menu tree hierarchy.
*/
function testMenuTreeData() {
$tree = menu_tree_data($this->links);
// Validate that parent items #1, #2, and #5 exist on the root level.
$this->assertSameLink($this->links[1], $tree[1]['link'], 'Parent item #1 exists.');
$this->assertSameLink($this->links[2], $tree[2]['link'], 'Parent item #2 exists.');
$this->assertSameLink($this->links[5], $tree[5]['link'], 'Parent item #5 exists.');
// Validate that child item #4 exists at the correct location in the hierarchy.
$this->assertSameLink($this->links[4], $tree[2]['below'][3]['below'][4]['link'], 'Child item #4 exists in the hierarchy.');
}
/**
* Check that two menu links are the same by comparing the mlid.
*
* @param $link1
* A menu link item.
* @param $link2
* A menu link item.
* @param $message
* The message to display along with the assertion.
* @return
* TRUE if the assertion succeeded, FALSE otherwise.
*/
protected function assertSameLink($link1, $link2, $message = '') {
return $this->assert($link1['mlid'] == $link2['mlid'], $message ? $message : 'First link is identical to second link');
}
}
Members
Name | Modifiers | Type | Description |
---|---|---|---|
DrupalTestCase:: |
protected | property | Assertions thrown in that test case. |
DrupalTestCase:: |
protected | property | The database prefix of this test run. |
DrupalTestCase:: |
protected | property | The original file directory, before it was changed for testing purposes. |
DrupalTestCase:: |
public | property | Current results of this test case. |
DrupalTestCase:: |
protected | property | Flag to indicate whether the test has been set up. |
DrupalTestCase:: |
protected | property | |
DrupalTestCase:: |
protected | property | |
DrupalTestCase:: |
protected | property | This class is skipped when looking for the source of an assertion. |
DrupalTestCase:: |
protected | property | The test run ID. |
DrupalTestCase:: |
protected | property | Time limit for the test. |
DrupalTestCase:: |
protected | function | Internal helper: stores the assert. |
DrupalTestCase:: |
protected | function | Check to see if two values are equal. |
DrupalTestCase:: |
protected | function | Check to see if a value is false (an empty string, 0, NULL, or FALSE). |
DrupalTestCase:: |
protected | function | Check to see if two values are identical. |
DrupalTestCase:: |
protected | function | Check to see if two values are not equal. |
DrupalTestCase:: |
protected | function | Check to see if two values are not identical. |
DrupalTestCase:: |
protected | function | Check to see if a value is not NULL. |
DrupalTestCase:: |
protected | function | Check to see if a value is NULL. |
DrupalTestCase:: |
protected | function | Check to see if a value is not false (not an empty string, 0, NULL, or FALSE). |
DrupalTestCase:: |
public static | function | Delete an assertion record by message ID. |
DrupalTestCase:: |
protected | function | Fire an error assertion. |
DrupalTestCase:: |
public | function | Handle errors during test runs. |
DrupalTestCase:: |
protected | function | Handle exceptions. |
DrupalTestCase:: |
protected | function | Fire an assertion that is always negative. |
DrupalTestCase:: |
public static | function | Converts a list of possible parameters into a stack of permutations. |
DrupalTestCase:: |
protected | function | Cycles through backtrace until the first non-assertion method is found. |
DrupalTestCase:: |
public static | function | Store an assertion from outside the testing context. |
DrupalTestCase:: |
protected | function | Fire an assertion that is always positive. |
DrupalTestCase:: |
public static | function | Generates a random string containing letters and numbers. |
DrupalTestCase:: |
public static | function | Generates a random string of ASCII characters of codes 32 to 126. |
DrupalTestCase:: |
public | function | Run all tests in this class. |
DrupalTestCase:: |
protected | function | Logs verbose message in a text file. |
DrupalUnitTestCase:: |
protected | function | Sets up unit test environment. |
DrupalUnitTestCase:: |
protected | function | |
DrupalUnitTestCase:: |
function |
Constructor for DrupalUnitTestCase. Overrides DrupalTestCase:: |
|
MenuTreeDataTestCase:: |
protected | function | Check that two menu links are the same by comparing the mlid. |
MenuTreeDataTestCase:: |
public static | function | |
MenuTreeDataTestCase:: |
function | Validate the generation of a proper menu tree hierarchy. |