You are here

function FieldAttachTestCase::createFieldWithInstance in Drupal 7

Create a field and an instance of it.

Parameters

string $suffix: (optional) A string that should only contain characters that are valid in PHP variable names as well.

5 calls to FieldAttachTestCase::createFieldWithInstance()
FieldAttachOtherTestCase::testFieldAttachForm in modules/field/tests/field.test
Test field_attach_form().
FieldAttachOtherTestCase::testFieldAttachSubmit in modules/field/tests/field.test
Test field_attach_submit().
FieldAttachOtherTestCase::testFieldAttachValidate in modules/field/tests/field.test
Test field_attach_validate().
FieldAttachOtherTestCase::testFieldAttachView in modules/field/tests/field.test
Test field_attach_view() and field_attach_prepare_view().
FieldAttachTestCase::setUp in modules/field/tests/field.test
Set the default field storage backend for fields created during tests.

File

modules/field/tests/field.test, line 98
Tests for field.module.

Class

FieldAttachTestCase

Code

function createFieldWithInstance($suffix = '') {
  $field_name = 'field_name' . $suffix;
  $field = 'field' . $suffix;
  $field_id = 'field_id' . $suffix;
  $instance = 'instance' . $suffix;
  $this->{$field_name} = drupal_strtolower($this
    ->randomName() . '_field_name' . $suffix);
  $this->{$field} = array(
    'field_name' => $this->{$field_name},
    'type' => 'test_field',
    'cardinality' => 4,
  );
  $this->{$field} = field_create_field($this->{$field});
  $this->{$field_id} = $this->{$field}['id'];
  $this->{$instance} = array(
    'field_name' => $this->{$field_name},
    'entity_type' => 'test_entity',
    'bundle' => 'test_bundle',
    'label' => $this
      ->randomName() . '_label',
    'description' => $this
      ->randomName() . '_description',
    'weight' => mt_rand(0, 127),
    'settings' => array(
      'test_instance_setting' => $this
        ->randomName(),
    ),
    'widget' => array(
      'type' => 'test_field_widget',
      'label' => 'Test Field',
      'settings' => array(
        'test_widget_setting' => $this
          ->randomName(),
      ),
    ),
  );
  field_create_instance($this->{$instance});
}