123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- <?php
- /**
- * @file
- * Tests for menu example module.
- */
- /**
- * Functional tests for the Menu Example module.
- *
- * @ingroup menu_example
- */
- class MenuExampleTestCase extends DrupalWebTestCase {
- /**
- * {@inheritdoc}
- */
- public static function getInfo() {
- return array(
- 'name' => 'Menu example functionality',
- 'description' => 'Checks behavior of Menu Example.',
- 'group' => 'Examples',
- );
- }
- /**
- * Enable modules and create user with specific permissions.
- */
- public function setUp() {
- parent::setUp('menu_example');
- }
- /**
- * Test the various menus.
- */
- public function testMenuExample() {
- $this->drupalGet('');
- $this->assertText(t('Menu Example: Menu in alternate menu'));
- $this->clickLink(t('Menu Example'));
- $this->assertText(t('This is the base page of the Menu Example'));
- $this->drupalGet('examples/menu_example_alternate_menu');
- $this->assertResponse(200);
- $this->clickLink(t('Custom Access Example'));
- $this->assertText(t('Custom Access Example'));
- $this->clickLink(t('examples/menu_example/custom_access/page'));
- $this->assertResponse(403);
- $this->drupalGet('examples/menu_example/permissioned');
- $this->assertText(t('Permissioned Example'));
- $this->clickLink('examples/menu_example/permissioned/controlled');
- $this->assertResponse(403);
- $this->drupalGet('examples/menu_example');
- $this->clickLink(t('MENU_CALLBACK example'));
- $this->drupalGet('examples/menu_example/path_only/callback');
- $this->assertText(t('The menu entry for this page is of type MENU_CALLBACK'));
- $this->clickLink(t('Tabs'));
- $this->assertText(t('This is the "tabs" menu entry'));
- $this->drupalGet('examples/menu_example/tabs/second');
- $this->assertText(t('This is the tab "second" in the "basic tabs" example'));
- $this->clickLink(t('third'));
- $this->assertText(t('This is the tab "third" in the "basic tabs" example'));
- $this->clickLink(t('Extra Arguments'));
- $this->drupalGet('examples/menu_example/use_url_arguments/one/two');
- $this->assertText(t('Argument 1=one'));
- $this->clickLink(t('Placeholder Arguments'));
- $this->clickLink(t('examples/menu_example/placeholder_argument/3343/display'));
- $this->assertRaw('<div>3343</div>');
- $this->clickLink(t('Processed Placeholder Arguments'));
- $this->assertText(t('Loaded value was jackpot! default'));
- // Create a user with permissions to access protected menu entry.
- $web_user = $this->drupalCreateUser(array('access protected menu example'));
- // Use custom overridden drupalLogin function to verify the user is logged
- // in.
- $this->drupalLogin($web_user);
- // Check that our title callback changing /user dynamically is working.
- // Using ' because of the format_username function.
- $this->assertRaw(t("@name's account", array('@name' => format_username($web_user))), format_string('Title successfully changed to account name: %name.', array('%name' => $web_user->name)));
- // Now start testing other menu entries.
- $this->drupalGet('examples/menu_example');
- $this->clickLink(t('Custom Access Example'));
- $this->assertText(t('Custom Access Example'));
- $this->drupalGet('examples/menu_example/custom_access/page');
- $this->assertResponse(200);
- $this->drupalGet('examples/menu_example/permissioned');
- $this->assertText('Permissioned Example');
- $this->clickLink('examples/menu_example/permissioned/controlled');
- $this->assertText('This menu entry will not show');
- $this->drupalGet('examples/menu_example/menu_altered_path');
- $this->assertText('This menu item was created strictly to allow the hook_menu_alter()');
- }
- }
|