Chris@0: drupalCreateContentType([ Chris@0: 'type' => 'page', Chris@0: 'name' => 'Basic page' Chris@0: ]); Chris@0: Chris@0: // Create a field. Chris@0: FieldStorageConfig::create([ Chris@0: 'field_name' => $this->fieldName, Chris@0: 'type' => 'link', Chris@0: 'entity_type' => 'node', Chris@0: 'cardinality' => 1, Chris@0: ])->save(); Chris@0: FieldConfig::create([ Chris@0: 'field_name' => $this->fieldName, Chris@0: 'entity_type' => 'node', Chris@0: 'bundle' => 'page', Chris@0: 'label' => 'link field', Chris@0: ])->save(); Chris@0: Chris@0: } Chris@0: Chris@0: public function testLinkViewsTokens() { Chris@0: // Array of URI's to test. Chris@0: $uris = [ Chris@0: 'http://www.drupal.org' => 'Drupal.org', Chris@0: ]; Chris@0: Chris@0: // Add nodes with the URI's and titles. Chris@0: foreach ($uris as $uri => $title) { Chris@0: $values = ['type' => 'page']; Chris@0: $values[$this->fieldName][] = ['uri' => $uri, 'title' => $title, 'options' => ['attributes' => ['class' => 'test-link-class']]]; Chris@0: $this->drupalCreateNode($values); Chris@0: } Chris@0: Chris@0: $this->drupalGet('test_link_tokens'); Chris@0: Chris@0: foreach ($uris as $uri => $title) { Chris@0: // Formatted link: {{ field_link }}
Chris@0: $this->assertRaw("Formated: $title"); Chris@0: Chris@0: // Raw uri: {{ field_link__uri }}
Chris@0: $this->assertRaw("Raw uri: $uri"); Chris@0: Chris@0: // Raw title: {{ field_link__title }}
Chris@0: $this->assertRaw("Raw title: $title"); Chris@0: Chris@0: // Raw options: {{ field_link__options }}
Chris@0: // Options is an array and should return empty after token replace. Chris@0: $this->assertRaw("Raw options: ."); Chris@0: } Chris@0: } Chris@0: Chris@0: }