From ffdfab24399ca071866ccef8492ca4c5c11caed0 Mon Sep 17 00:00:00 2001 From: Alex Pott <alex.a.pott@googlemail.com> Date: Tue, 31 Mar 2015 16:19:26 +0100 Subject: [PATCH] =?UTF-8?q?Issue=20#2457703=20by=20G=C3=A1bor=20Hojtsy:=20?= =?UTF-8?q?Default=20translatable=20site=20name=20is=20"Drupal"=20(incorre?= =?UTF-8?q?ctly)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/src/Tests/ConfigSchemaTest.php | 8 +------ .../src/Tests/LocaleConfigTranslationTest.php | 22 +++++++++---------- .../system/config/install/system.site.yml | 2 +- .../src/Tests/System/TokenReplaceUnitTest.php | 9 ++++++++ core/modules/system/system.install | 11 ++++++---- 5 files changed, 28 insertions(+), 24 deletions(-) diff --git a/core/modules/config/src/Tests/ConfigSchemaTest.php b/core/modules/config/src/Tests/ConfigSchemaTest.php index 4082dfa96c4a..8a8f649873f2 100644 --- a/core/modules/config/src/Tests/ConfigSchemaTest.php +++ b/core/modules/config/src/Tests/ConfigSchemaTest.php @@ -288,14 +288,8 @@ function testSchemaMappingWithParents() { * Tests metadata applied to configuration objects. */ function testSchemaData() { - // Try some simple properties. + // Try a simple property. $meta = \Drupal::service('config.typed')->get('system.site'); - $property = $meta->get('name'); - $this->assertTrue($property instanceof StringInterface, 'Got the right wrapper fo the site name property.'); - $this->assertEqual($property->getValue(), 'Drupal', 'Got the right string value for site name data.'); - $definition = $property->getDataDefinition(); - $this->assertTrue($definition['translatable'], 'Got the right translatability setting for site name data.'); - $property = $meta->get('page')->get('front'); $this->assertTrue($property instanceof StringInterface, 'Got the right wrapper fo the page.front property.'); $this->assertEqual($property->getValue(), 'user/login', 'Got the right value for page.front data.'); diff --git a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php index d5a7c2102634..4535b9b3dae2 100644 --- a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php +++ b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php @@ -7,6 +7,7 @@ namespace Drupal\locale\Tests; +use Drupal\Component\Utility\SafeMarkup; use Drupal\simpletest\WebTestBase; use Drupal\core\language\languageInterface; @@ -45,7 +46,7 @@ protected function setUp() { public function testConfigTranslation() { // Add custom language. $langcode = 'xx'; - $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'translate interface', 'administer modules', 'access site-wide contact form', 'administer contact forms')); + $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'translate interface', 'administer modules', 'access site-wide contact form', 'administer contact forms', 'administer site configuration')); $this->drupalLogin($admin_user); $name = $this->randomMachineName(16); $edit = array( @@ -59,12 +60,13 @@ public function testConfigTranslation() { $edit = array("prefix[$langcode]" => $langcode); $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration')); - // Check site name string exists and create translation for it. - $string = $this->storage->findString(array('source' => 'Drupal', 'context' => '', 'type' => 'configuration')); + // Check that the maintenance message exists and create translation for it. + $source = '@site is currently under maintenance. We should be back shortly. Thank you for your patience.'; + $string = $this->storage->findString(array('source' => $source, 'context' => '', 'type' => 'configuration')); $this->assertTrue($string, 'Configuration strings have been created upon installation.'); // Translate using the UI so configuration is refreshed. - $site_name = $this->randomMachineName(20); + $message = $this->randomMachineName(20); $search = array( 'string' => $string->source, 'langcode' => $langcode, @@ -75,18 +77,14 @@ public function testConfigTranslation() { $textarea = current($textareas); $lid = (string) $textarea[0]['name']; $edit = array( - $lid => $site_name, + $lid => $message, ); $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations')); - // Get translation and check we've only got the site name. - $translation = \Drupal::languageManager()->getLanguageConfigOverride($langcode, 'system.site')->get(); + // Get translation and check we've only got the message. + $translation = \Drupal::languageManager()->getLanguageConfigOverride($langcode, 'system.maintenance')->get(); $this->assertEqual(count($translation), 1, 'Got the right number of properties after translation.'); - $this->assertEqual($translation['name'], $site_name, 'Got the right translation for the site name.'); - - // Check the translated site name is displayed. - $this->drupalGet($langcode); - $this->assertText($site_name, 'The translated site name is displayed after translations refreshed.'); + $this->assertEqual($translation['message'], $message); // Check default medium date format exists and create a translation for it. $string = $this->storage->findString(array('source' => 'D, m/d/Y - H:i', 'context' => 'PHP date format', 'type' => 'configuration')); diff --git a/core/modules/system/config/install/system.site.yml b/core/modules/system/config/install/system.site.yml index 403e46409676..9eb22f3e05f1 100644 --- a/core/modules/system/config/install/system.site.yml +++ b/core/modules/system/config/install/system.site.yml @@ -1,5 +1,5 @@ uuid: '' -name: Drupal +name: '' mail: '' slogan: '' page: diff --git a/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php b/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php index a5bbe745d347..6cf92efc1313 100644 --- a/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php +++ b/core/modules/system/src/Tests/System/TokenReplaceUnitTest.php @@ -18,6 +18,15 @@ */ class TokenReplaceUnitTest extends TokenReplaceUnitTestBase { + /** + * @inheritdoc + */ + protected function setUp() { + parent::setUp(); + // Set the site name to something other than an empty string. + $this->config('system.site')->set('name', 'Drupal')->save(); + } + /** * Test whether token-replacement works in various contexts. */ diff --git a/core/modules/system/system.install b/core/modules/system/system.install index 4a8683eaae8a..94c8e33b6fb7 100644 --- a/core/modules/system/system.install +++ b/core/modules/system/system.install @@ -644,10 +644,13 @@ function system_install() { $cron_key = Crypt::randomBytesBase64(55); \Drupal::state()->set('system.cron_key', $cron_key); - // Populate the site UUID. - \Drupal::configFactory()->getEditable('system.site') - ->set('uuid', \Drupal::service('uuid')->generate()) - ->save(); + // Populate the site UUID and default name (if not set). + $site = \Drupal::configFactory()->getEditable('system.site'); + $site->set('uuid', \Drupal::service('uuid')->generate()); + if (!$site->get('name')) { + $site->set('name', 'Drupal'); + } + $site->save(); } /** -- GitLab