You are here

public function FieldCollectionEntityTranslationTestCase::addLanguage in Field collection 7

Install a specified language if it has not been already, otherwise make sure that the language is enabled.


string $langcode: The language code to check.

1 call to FieldCollectionEntityTranslationTestCase::addLanguage()
FieldCollectionEntityTranslationTestCase::setUp in ./field_collection.test
Sets up a Drupal site for running functional and integration tests.


./field_collection.test, line 753
Tests for field_collections.


Test using field collection with content that gets translated with Entity Translation.


public function addLanguage($langcode) {

  // Check to make sure that language has not already been installed.
  if (strpos($this
    ->drupalGetContent(), 'enabled[' . $langcode . ']') === FALSE) {

    // Doesn't have language installed so add it.
    $edit = array();
    $edit['langcode'] = $langcode;
      ->drupalPost('admin/config/regional/language/add', $edit, t('Add language'));

    // Make sure we are not using a stale list.
    $languages = language_list();
      ->assertTrue(array_key_exists($langcode, $languages), t('Language was installed successfully.'));
    if (array_key_exists($langcode, $languages)) {
        ->assertRaw(t('The language %language has been created and can now be used. More information is available on the <a href="@locale-help">help screen</a>.', array(
        '%language' => $languages[$langcode]->name,
        '@locale-help' => url('admin/help/locale'),
      )), t('Language has been created.'));
  elseif ($this
    ->xpath('//input[@type="checkbox" and @name=:name and @checked="checked"]', array(
    ':name' => 'enabled[' . $langcode . ']',
  ))) {

    // It is installed and enabled. No need to do anything.
      ->assertTrue(TRUE, 'Language [' . $langcode . '] already installed and enabled.');
  else {

    // It is installed but not enabled. Enable it.
      ->assertTrue(TRUE, 'Language [' . $langcode . '] already installed.');
      ->drupalPost(NULL, array(
      'enabled[' . $langcode . ']' => TRUE,
    ), t('Save configuration'));
      ->assertRaw(t('Configuration saved.'), t('Language successfully enabled.'));