protected function ManageFieldsTest::addPersistentFieldStorage in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/field_ui/src/Tests/ManageFieldsTest.php \Drupal\field_ui\Tests\ManageFieldsTest::addPersistentFieldStorage()
Tests that persistent field storage appears in the field UI.
1 call to ManageFieldsTest::addPersistentFieldStorage()
- ManageFieldsTest::testCRUDFields in core/modules/ field_ui/ src/ Tests/ ManageFieldsTest.php 
- Runs the field CRUD tests.
File
- core/modules/ field_ui/ src/ Tests/ ManageFieldsTest.php, line 300 
- Contains \Drupal\field_ui\Tests\ManageFieldsTest.
Class
- ManageFieldsTest
- Tests the Field UI "Manage fields" screen.
Namespace
Drupal\field_ui\TestsCode
protected function addPersistentFieldStorage() {
  $field_storage = FieldStorageConfig::loadByName('node', $this->fieldName);
  // Persist the field storage even if there are no fields.
  $field_storage
    ->set('persist_with_no_fields', TRUE)
    ->save();
  // Delete all instances of the field.
  foreach ($field_storage
    ->getBundles() as $node_type) {
    // Delete all the body field instances.
    $this
      ->drupalGet('admin/structure/types/manage/' . $node_type . '/fields/node.' . $node_type . '.' . $this->fieldName);
    $this
      ->clickLink(t('Delete'));
    $this
      ->drupalPostForm(NULL, array(), t('Delete'));
  }
  // Check "Re-use existing field" appears.
  $this
    ->drupalGet('admin/structure/types/manage/page/fields/add-field');
  $this
    ->assertRaw(t('Re-use an existing field'), '"Re-use existing field" was found.');
  // Ensure that we test with a label that contains HTML.
  $label = $this
    ->randomString(4) . '<br/>' . $this
    ->randomString(4);
  // Add a new field for the orphaned storage.
  $this
    ->fieldUIAddExistingField("admin/structure/types/manage/page", $this->fieldName, $label);
}