You are here

public function FppEntityFormTest::testExistingReusable in Fieldable Panels Panes (FPP) 7

Confirm that the edit form has the correct fields for reusable FPPs.

File

tests/fpp.entity_form.test, line 70
Tests for the Fieldable Panels Panes module to ensure the basic form works.

Class

FppEntityFormTest
Tests for the Fieldable Panels Panes module to ensure the basic form works.

Code

public function testExistingReusable() {

  // Create a user with the admin permission.
  $this->adminUser = $this
    ->createAdminUser();
  $this
    ->drupalLogin($this->adminUser);

  // Create a reusable FPP.
  $fpp = new StdClass();
  $fpp->bundle = $this->bundle;
  $fpp->title = $this->title;
  $fpp->reusable = 1;
  $saved_fpp = fieldable_panels_panes_save($fpp);

  // Load the fpp-add form.
  $this
    ->drupalGet('admin/structure/fieldable-panels-panes/view/' . $fpp->fpid . '/edit');
  $this
    ->assertResponse(200);

  // Check all of the fields that are suitable for a reusable FPP.
  // The basic title field.
  $this
    ->assertFieldByName('title');

  // The "make title a link" option's fields.
  $this
    ->assertFieldByName('link');
  $this
    ->assertFieldByName('path');

  // The admin title & description fields.
  $this
    ->assertFieldByName('admin_title');
  $this
    ->assertFieldByName('admin_description');

  // The 'reusable' option is not changable after the FPP's initial creation.
  $this
    ->assertNoFieldByName('reusable');

  // Because FPPs can be reusable they can be grouped in categories in the
  // Panels admin UI.
  $this
    ->assertFieldByName('category');

  // The language selector is not present because the Locale module is not
  // enabled by default.
  $this
    ->assertNoFieldByName('language');

  // The revision fields are visible when editing a reusable FPP.
  $this
    ->assertFieldByName('revision');
  $this
    ->assertFieldByName('log');
}