Helper for assertUniqueText and assertNoUniqueText.

It is not recommended to call this function directly.

Parameters

$text: Plain text to look for.

$message: Message to display.

$group: The group this message belongs to.

$be_unique: TRUE if this text should be found only once, FALSE if it should be found more than once.

Return value

TRUE on pass, FALSE on fail.

2 calls to DrupalWebTestCase::assertUniqueTextHelper()
DrupalWebTestCase::assertNoUniqueText in modules/simpletest/drupal_web_test_case.php
Pass if the text is found MORE THAN ONCE on the text version of the page.
DrupalWebTestCase::assertUniqueText in modules/simpletest/drupal_web_test_case.php
Pass if the text is found ONLY ONCE on the text version of the page.

File

modules/simpletest/drupal_web_test_case.php, line 3447

Class

DrupalWebTestCase
Test case for typical Drupal tests.

Code

protected function assertUniqueTextHelper($text, $message, $group, $be_unique) {
  if ($this->plainTextContent === FALSE) {
    $this->plainTextContent = filter_xss($this
      ->drupalGetContent(), array());
  }
  if (!$message) {
    $message = '"' . $text . '"' . ($be_unique ? ' found only once' : ' found more than once');
  }
  $first_occurance = strpos($this->plainTextContent, $text);
  if ($first_occurance === FALSE) {
    return $this
      ->assert(FALSE, $message, $group);
  }
  $offset = $first_occurance + strlen($text);
  $second_occurance = strpos($this->plainTextContent, $text, $offset);
  return $this
    ->assert($be_unique == ($second_occurance === FALSE), $message, $group);
}