'Language dependency injection', 'description' => 'Compares the default language from $GLOBALS against the dependency injected language object.', 'group' => 'Language', ); } function setUp() { parent::setUp(); // Ensure we are building a new Language object for each test. $this->container->get('language_manager')->reset(); } /** * Test dependency injected languages against a new Language object. * * @see Drupal\Core\Language\Language */ function testDependencyInjectedNewLanguage() { // Initialize the language system. drupal_language_initialize(); $expected = language_default(); $result = language(LANGUAGE_TYPE_INTERFACE); foreach ($expected as $property => $value) { $this->assertEqual($expected->$property, $result->$property, format_string('The dependency injected language object %prop property equals the new Language object %prop property.', array('%prop' => $property))); } } /** * Test dependency injected Language object against a new default language * object. * * @see Drupal\Core\Language\Language */ function testDependencyInjectedNewDefaultLanguage() { // Change the language default object to different values. $new_language_default = array( 'langcode' => 'fr', 'name' => 'French', 'direction' => 0, 'weight' => 0, 'method_id' => 'language-default', 'default' => TRUE, ); variable_set('language_default', $new_language_default); // Initialize the language system. drupal_language_initialize(); // The language system creates a Language object which contains the // same properties as the new default language object. $expected = new Language($new_language_default); $result = language(LANGUAGE_TYPE_INTERFACE); foreach ($expected as $property => $value) { $this->assertEqual($expected->$property, $result->$property, format_string('The dependency injected language object %prop property equals the default language object %prop property.', array('%prop' => $property))); } // Delete the language_default variable we previously set. variable_del('language_default'); } }