public function BooleanFormatterTest::testBooleanFormatter in Drupal 9
Same name and namespace in other branches
- 8 core/modules/field/tests/src/Kernel/Boolean/BooleanFormatterTest.php \Drupal\Tests\field\Kernel\Boolean\BooleanFormatterTest::testBooleanFormatter()
Tests boolean formatter output.
File
- core/
modules/ field/ tests/ src/ Kernel/ Boolean/ BooleanFormatterTest.php, line 108
Class
- BooleanFormatterTest
- Tests the boolean formatter.
Namespace
Drupal\Tests\field\Kernel\BooleanCode
public function testBooleanFormatter() {
$data = [];
$data[] = [
0,
[],
'Off',
];
$data[] = [
1,
[],
'On',
];
$format = [
'format' => 'enabled-disabled',
];
$data[] = [
0,
$format,
'Disabled',
];
$data[] = [
1,
$format,
'Enabled',
];
$format = [
'format' => 'unicode-yes-no',
];
$data[] = [
1,
$format,
'✔',
];
$data[] = [
0,
$format,
'✖',
];
$format = [
'format' => 'custom',
'format_custom_false' => 'FALSE',
'format_custom_true' => 'TRUE',
];
$data[] = [
0,
$format,
'FALSE',
];
$data[] = [
1,
$format,
'TRUE',
];
foreach ($data as $test_data) {
list($value, $settings, $expected) = $test_data;
$component = $this->display
->getComponent($this->fieldName);
$component['settings'] = $settings;
$this->display
->setComponent($this->fieldName, $component);
$entity = EntityTest::create([]);
$entity->{$this->fieldName}->value = $value;
// Verify that all HTML is escaped and newlines are retained.
$this
->renderEntityFields($entity, $this->display);
$this
->assertRaw($expected);
}
}