function ArgumentStringTest::testGlossary

Tests the glossary feature.

File

drupal/core/modules/views/lib/Drupal/views/Tests/Handler/ArgumentStringTest.php, line 33
Definition of Drupal\views\Tests\Handler\ArgumentStringTest.

Class

ArgumentStringTest
Tests the core Drupal\views\Plugin\views\argument\String handler.

Namespace

Drupal\views\Tests\Handler

Code

function testGlossary() {

  // Setup some nodes, one with a, two with b and three with c.
  $counter = 1;
  foreach (array(
    'a',
    'b',
    'c',
  ) as $char) {
    for ($i = 0; $i < $counter; $i++) {
      $edit = array(
        'title' => $char . $this
          ->randomName(),
      );
      $this
        ->drupalCreateNode($edit);
    }
  }
  $view = views_get_view('test_glossary');
  $this
    ->executeView($view);
  $count_field = 'nid';
  foreach ($view->result as &$row) {
    if (strpos($view->field['title']
      ->getValue($row), 'a') === 0) {
      $this
        ->assertEqual(1, $row->{$count_field});
    }
    if (strpos($view->field['title']
      ->getValue($row), 'b') === 0) {
      $this
        ->assertEqual(2, $row->{$count_field});
    }
    if (strpos($view->field['title']
      ->getValue($row), 'c') === 0) {
      $this
        ->assertEqual(3, $row->{$count_field});
    }
  }
}