diff options
author | Angie Byron <webchick@24967.no-reply.drupal.org> | 2010-08-05 08:08:43 +0000 |
---|---|---|
committer | Angie Byron <webchick@24967.no-reply.drupal.org> | 2010-08-05 08:08:43 +0000 |
commit | e574bcffcebf168a8b2f329b2eea8269f494be6c (patch) | |
tree | 9e50d7874454a9fe4ee52dc92ad153a6c9a63372 /modules/path | |
parent | f1b30b89c59127ea787bafd7da6b06f0266d4bb2 (diff) | |
download | brdo-e574bcffcebf168a8b2f329b2eea8269f494be6c.tar.gz brdo-e574bcffcebf168a8b2f329b2eea8269f494be6c.tar.bz2 |
#835212 by plach, jhodgdon: Fixed locale_url_outbound_alter() should be run only on multilingual sites.
Diffstat (limited to 'modules/path')
-rw-r--r-- | modules/path/path.test | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/modules/path/path.test b/modules/path/path.test index 6584eda6b..cca5fd972 100644 --- a/modules/path/path.test +++ b/modules/path/path.test @@ -440,3 +440,65 @@ class PathLanguageUITestCase extends DrupalWebTestCase { } } + +/** + * Tests that paths are not prefixed on a monolingual site. + */ +class PathMonolingualTestCase extends DrupalWebTestCase { + public static function getInfo() { + return array( + 'name' => 'Paths on non-English monolingual sites', + 'description' => 'Confirm that paths are not changed on monolingual non-English sites', + 'group' => 'Path', + ); + } + + function setUp() { + global $language; + parent::setUp('path', 'locale', 'translation'); + + // Create and login user. + $web_user = $this->drupalCreateUser(array('administer languages', 'access administration pages')); + $this->drupalLogin($web_user); + + // Enable French language. + $edit = array(); + $edit['langcode'] = 'fr'; + $this->drupalPost('admin/config/regional/language/add', $edit, t('Add language')); + + // Make French the default language. + $edit = array('site_default' => 'fr'); + $this->drupalPost('admin/config/regional/language', $edit, t('Save configuration')); + + // Disable English. + $edit = array('enabled[en]' => FALSE); + $this->drupalPost('admin/config/regional/language', $edit, t('Save configuration')); + + // Verify that French is the only language. + $this->assertFalse(drupal_multilingual(), t('Site is mono-lingual')); + $this->assertEqual(language_default('language'), 'fr', t('French is the default language')); + + // Set language detection to URL. + $edit = array('language[enabled][locale-url]' => TRUE); + $this->drupalPost('admin/config/regional/language/configure', $edit, t('Save settings')); + + // Force languages to be initialized. + drupal_language_initialize(); + } + + /** + * Verifies that links do not have language prefixes in them. + */ + function testPageLinks() { + // Navigate to 'admin/config' path. + $this->drupalGet('admin/config'); + + // Verify that links in this page do not have a 'fr/' prefix. + $this->assertNoLinkByHref('/fr/', 'Links do not contain language prefix'); + + // Verify that links in this page can be followed and work. + $this->clickLink(t('Languages')); + $this->assertResponse(200, 'Clicked link results in a valid page'); + $this->assertText(t('Add language'), 'Page contains the add language text'); + } +} |