function TaxonomyTermFieldTestCase::testTaxonomyTermFieldValidation

Test term field validation.

File

modules/taxonomy/taxonomy.test, line 1587

Class

TaxonomyTermFieldTestCase
Tests for taxonomy term field and formatter.

Code

function testTaxonomyTermFieldValidation() {
  // Test valid and invalid values with field_attach_validate().
  $langcode = LANGUAGE_NONE;
  $entity = field_test_create_stub_entity();
  $term = $this->createTerm($this->vocabulary);
  $entity->{$this->field_name}[$langcode][0]['tid'] = $term->tid;
  try {
    field_attach_validate('test_entity', $entity);
    $this->pass('Correct term does not cause validation error.');
  } catch (FieldValidationException $e) {
    $this->fail('Correct term does not cause validation error.');
  }
  $entity = field_test_create_stub_entity();
  $bad_term = $this->createTerm($this->createVocabulary());
  $entity->{$this->field_name}[$langcode][0]['tid'] = $bad_term->tid;
  try {
    field_attach_validate('test_entity', $entity);
    $this->fail('Wrong term causes validation error.');
  } catch (FieldValidationException $e) {
    $this->pass('Wrong term causes validation error.');
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.