public function EntityReferenceTest::testSettingsSummary in Reference Table Formatter 2.0.x
@covers ::settingsSummary
File
- tests/
src/ Kernel/ EntityReferenceTest.php, line 408
Class
- EntityReferenceTest
- @coversDefaultClass \Drupal\reference_table_formatter\Plugin\Field\FieldFormatter\EntityReferenceTableFormatter @group reference_table_formatter
Namespace
Drupal\Tests\reference_table_formatter\KernelCode
public function testSettingsSummary() {
$formatter = new EntityReferenceTableFormatter('test', [], $this
->createMock(FieldDefinitionInterface::class), [], '', '_custom', [], $this->container
->get('reference_table_formatter.renderer'), $this->container
->get('entity_type.manager'), $this->container
->get('entity_display.repository'));
$summary = $formatter
->settingsSummary();
$this
->assertCount(1, $summary);
$this
->assertEquals(t('Showing a table of rendered @mode entity fields', [
'@mode' => 'Default',
]), $summary[0], 'Formatter settings summary with default values.');
$formatter
->setSetting('view_mode', 'does_not_exist');
$this
->assertEquals(t('Showing a table of rendered @mode entity fields', [
'@mode' => 'does_not_exist',
]), $formatter
->settingsSummary()[0], 'View mode setting that does not exist is printed verbatim.');
$empty = $this
->randomMachineName();
$formatter
->setSettings([
'view_mode' => 'default',
'show_entity_label' => TRUE,
'empty_cell_value' => $empty,
'hide_header' => TRUE,
]);
$summary = $formatter
->settingsSummary();
$this
->assertCount(4, $summary);
$this
->assertEquals(t('Entity label displayed'), $summary[1], 'Show entity label message.');
$this
->assertEquals(t('Table header hidden'), $summary[2], 'Table header setting message.');
$this
->assertEquals(t('Empty cell value: @value', [
'@value' => $empty,
]), $summary[3], 'Empty cell value message.');
}