summaryrefslogtreecommitdiff
path: root/modules/locale
diff options
context:
space:
mode:
authorwebchick <webchick@24967.no-reply.drupal.org>2012-03-01 20:56:48 -0800
committerwebchick <webchick@24967.no-reply.drupal.org>2012-03-01 20:56:48 -0800
commite4aa47d7543fdee3e2170d7d6edcbed015b01a15 (patch)
tree8b3f4e8796a3a12c5d5915d32c0263ad2c1fe2a4 /modules/locale
parent186437d33a903cd3ae13c7f1b2160a88941cc614 (diff)
downloadbrdo-e4aa47d7543fdee3e2170d7d6edcbed015b01a15.tar.gz
brdo-e4aa47d7543fdee3e2170d7d6edcbed015b01a15.tar.bz2
Issue #1314384 by Pol, Gábor Hojtsy, oriol_e9g, plach: Added Remember the provider that selected the language for later use.
Diffstat (limited to 'modules/locale')
-rw-r--r--modules/locale/locale.test8
-rw-r--r--modules/locale/tests/locale_test.module3
2 files changed, 11 insertions, 0 deletions
diff --git a/modules/locale/locale.test b/modules/locale/locale.test
index ca945569a..db0bead1e 100644
--- a/modules/locale/locale.test
+++ b/modules/locale/locale.test
@@ -2118,6 +2118,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
'language_negotiation' => array(LOCALE_LANGUAGE_NEGOTIATION_URL, LANGUAGE_NEGOTIATION_DEFAULT),
'path' => 'admin/config',
'expect' => $default_string,
+ 'expected_provider' => LANGUAGE_NEGOTIATION_DEFAULT,
'http_header' => $http_header_browser_fallback,
'message' => 'URL (PATH) > DEFAULT: no language prefix, UI language is default and the browser language preference setting is not used.',
),
@@ -2126,6 +2127,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
'language_negotiation' => array(LOCALE_LANGUAGE_NEGOTIATION_URL, LANGUAGE_NEGOTIATION_DEFAULT),
'path' => "$language/admin/config",
'expect' => $language_string,
+ 'expected_provider' => LOCALE_LANGUAGE_NEGOTIATION_URL,
'http_header' => $http_header_browser_fallback,
'message' => 'URL (PATH) > DEFAULT: with language prefix, UI language is switched based on path prefix',
),
@@ -2134,6 +2136,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
'language_negotiation' => array(LOCALE_LANGUAGE_NEGOTIATION_URL, LOCALE_LANGUAGE_NEGOTIATION_BROWSER),
'path' => 'admin/config',
'expect' => $language_browser_fallback_string,
+ 'expected_provider' => LOCALE_LANGUAGE_NEGOTIATION_BROWSER,
'http_header' => $http_header_browser_fallback,
'message' => 'URL (PATH) > BROWSER: no language prefix, UI language is determined by browser language preference',
),
@@ -2142,6 +2145,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
'language_negotiation' => array(LOCALE_LANGUAGE_NEGOTIATION_URL, LOCALE_LANGUAGE_NEGOTIATION_BROWSER),
'path' => "$language/admin/config",
'expect' => $language_string,
+ 'expected_provider' => LOCALE_LANGUAGE_NEGOTIATION_URL,
'http_header' => $http_header_browser_fallback,
'message' => 'URL (PATH) > BROWSER: with langage prefix, UI language is based on path prefix',
),
@@ -2150,6 +2154,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
'language_negotiation' => array(LOCALE_LANGUAGE_NEGOTIATION_URL, LOCALE_LANGUAGE_NEGOTIATION_BROWSER, LANGUAGE_NEGOTIATION_DEFAULT),
'path' => 'admin/config',
'expect' => $default_string,
+ 'expected_provider' => LANGUAGE_NEGOTIATION_DEFAULT,
'http_header' => $http_header_blah,
'message' => 'URL (PATH) > BROWSER > DEFAULT: no language prefix and browser language preference set to unknown language should use default language',
),
@@ -2177,6 +2182,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
'locale_language_negotiation_url_part' => LOCALE_LANGUAGE_NEGOTIATION_URL_DOMAIN,
'path' => 'admin/config',
'expect' => $default_string,
+ 'expected_provider' => LANGUAGE_NEGOTIATION_DEFAULT,
'http_header' => $http_header_browser_fallback,
'message' => 'URL (DOMAIN) > DEFAULT: default domain should get default language',
),
@@ -2188,6 +2194,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
'locale_test_domain' => $language_domain,
'path' => 'admin/config',
'expect' => $language_string,
+ 'expected_provider' => LOCALE_LANGUAGE_NEGOTIATION_URL,
'http_header' => $http_header_browser_fallback,
'message' => 'URL (DOMAIN) > DEFAULT: domain example.cn should switch to Chinese',
),
@@ -2211,6 +2218,7 @@ class LocaleUILanguageNegotiationTest extends DrupalWebTestCase {
}
$this->drupalGet($test['path'], array(), $test['http_header']);
$this->assertText($test['expect'], $test['message']);
+ $this->assertText(t('Language negotiation provider: @name', array('@name' => $test['expected_provider'])));
}
/**
diff --git a/modules/locale/tests/locale_test.module b/modules/locale/tests/locale_test.module
index 14a2588dd..2af50a69d 100644
--- a/modules/locale/tests/locale_test.module
+++ b/modules/locale/tests/locale_test.module
@@ -32,6 +32,9 @@ function locale_test_boot() {
*/
function locale_test_init() {
locale_test_store_language_negotiation();
+ if (isset($GLOBALS['language']) && isset($GLOBALS['language']->provider)) {
+ drupal_set_message(t('Language negotiation provider: @name', array('@name' => $GLOBALS['language']->provider)));
+ }
}
/**