public function EntityDisplayModeTest::testEntityViewModeUI in Zircon Profile 8.0
Same name and namespace in other branches
- 8 core/modules/field_ui/src/Tests/EntityDisplayModeTest.php \Drupal\field_ui\Tests\EntityDisplayModeTest::testEntityViewModeUI()
Tests the EntityViewMode user interface.
File
- core/modules/ field_ui/ src/ Tests/ EntityDisplayModeTest.php, line 39 
- Contains \Drupal\field_ui\Tests\EntityDisplayModeTest.
Class
- EntityDisplayModeTest
- Tests the entity display modes UI.
Namespace
Drupal\field_ui\TestsCode
public function testEntityViewModeUI() {
  // Test the listing page.
  $this
    ->drupalGet('admin/structure/display-modes/view');
  $this
    ->assertResponse(403);
  $this
    ->drupalLogin($this
    ->drupalCreateUser(array(
    'administer display modes',
  )));
  $this
    ->drupalGet('admin/structure/display-modes/view');
  $this
    ->assertResponse(200);
  $this
    ->assertText(t('Add new view mode'));
  $this
    ->assertLinkByHref('admin/structure/display-modes/view/add');
  $this
    ->assertLinkByHref('admin/structure/display-modes/view/add/entity_test');
  $this
    ->drupalGet('admin/structure/display-modes/view/add/entity_test_mulrev');
  $this
    ->assertResponse(404);
  $this
    ->drupalGet('admin/structure/display-modes/view/add');
  $this
    ->assertNoLink(t('Test entity - revisions and data table'), 'An entity type with no view builder cannot have view modes.');
  // Test adding a view mode including dots in machine_name.
  $this
    ->clickLink(t('Test entity'));
  $edit = array(
    'id' => strtolower($this
      ->randomMachineName()) . '.' . strtolower($this
      ->randomMachineName()),
    'label' => $this
      ->randomString(),
  );
  $this
    ->drupalPostForm(NULL, $edit, t('Save'));
  $this
    ->assertRaw('The machine-readable name must contain only lowercase letters, numbers, and underscores.');
  // Test adding a view mode.
  $edit = array(
    'id' => strtolower($this
      ->randomMachineName()),
    'label' => $this
      ->randomString(),
  );
  $this
    ->drupalPostForm(NULL, $edit, t('Save'));
  $this
    ->assertRaw(t('Saved the %label view mode.', array(
    '%label' => $edit['label'],
  )));
  // Test editing the view mode.
  $this
    ->drupalGet('admin/structure/display-modes/view/manage/entity_test.' . $edit['id']);
  // Test deleting the view mode.
  $this
    ->clickLink(t('Delete'));
  $this
    ->assertRaw(t('Are you sure you want to delete the view mode %label?', array(
    '%label' => $edit['label'],
  )));
  $this
    ->drupalPostForm(NULL, NULL, t('Delete'));
  $this
    ->assertRaw(t('The view mode %label has been deleted.', array(
    '%label' => $edit['label'],
  )));
}