public function FieldTemplateTest::testDsMultipleFieldItems in Display Suite 8.4
Tests multiple field items.
File
- tests/
src/ Functional/ FieldTemplateTest.php, line 514
Class
- FieldTemplateTest
- Tests for display of nodes and fields.
Namespace
Drupal\Tests\ds\FunctionalCode
public function testDsMultipleFieldItems() {
// Get a node.
/** @var \Drupal\node\NodeInterface $node */
$node = $this
->entitiesTestSetup('hidden');
$edit = [
'fields[field_tags][region]' => 'right',
'fields[field_tags][type]' => 'entity_reference_label',
];
$this
->dsConfigureUi($edit, 'admin/structure/types/manage/article/display');
// Set expert field on.
$edit = [
'fields[field_tags][settings_edit_form][third_party_settings][ds][ft][id]' => 'expert',
'fields[field_tags][settings_edit_form][third_party_settings][ds][ft][settings][fis]' => '1',
'fields[field_tags][settings_edit_form][third_party_settings][ds][ft][settings][fis-cl]' => 'tags',
'fields[field_tags][settings_edit_form][third_party_settings][ds][ft][settings][fi]' => '1',
'fields[field_tags][settings_edit_form][third_party_settings][ds][ft][settings][fi-cl]' => 'tag',
];
$this
->dsEditFormatterSettings($edit, 'field_tags');
drupal_flush_all_caches();
// Add multiple tags.
$edit = [
'field_tags[0][target_id]' => 'Tag 1',
'field_tags[1][target_id]' => 'Tag 2',
];
$this
->drupalGet('node/' . $node
->id() . '/edit');
$this
->submitForm($edit, 'Save');
// Count the found tags.
$this
->drupalGet('node/' . $node
->id());
$elements = $this
->xpath('//div[@class="group-right"]/div[@class="tags"]/div[@class="tag"]');
$this
->assertEquals(count($elements), 2, '2 tags found');
}