You are here

public function AttributeTest::testIterate in Drupal 8

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Core/Template/AttributeTest.php \Drupal\Tests\Core\Template\AttributeTest::testIterate()
  2. 10 core/tests/Drupal/Tests/Core/Template/AttributeTest.php \Drupal\Tests\Core\Template\AttributeTest::testIterate()

Tests iterating on the values of the attribute.

File

core/tests/Drupal/Tests/Core/Template/AttributeTest.php, line 320

Class

AttributeTest
@coversDefaultClass \Drupal\Core\Template\Attribute @group Template

Namespace

Drupal\Tests\Core\Template

Code

public function testIterate() {
  $attribute = new Attribute([
    'class' => [
      'example-class',
    ],
    'id' => 'example-id',
  ]);
  $counter = 0;
  foreach ($attribute as $key => $value) {
    if ($counter == 0) {
      $this
        ->assertEquals('class', $key);
      $this
        ->assertEquals(new AttributeArray('class', [
        'example-class',
      ]), $value);
    }
    if ($counter == 1) {
      $this
        ->assertEquals('id', $key);
      $this
        ->assertEquals(new AttributeString('id', 'example-id'), $value);
    }
    $counter++;
  }
}