options_test.module in Drupal 8
Same filename and directory in other branches
Helper module for the List module tests.
File
core/modules/options/tests/options_test/options_test.moduleView source
<?php
/**
* @file
* Helper module for the List module tests.
*/
use Drupal\Core\Entity\FieldableEntityInterface;
use Drupal\Core\Field\FieldStorageDefinitionInterface;
/**
* Implements callback_allowed_values_function().
*
* @see options_allowed_values()
*/
function options_test_allowed_values_callback(FieldStorageDefinitionInterface $definition, FieldableEntityInterface $entity = NULL) {
$values = [
'Group 1' => [
0 => 'Zero',
],
1 => 'One',
'Group 2' => [
2 => 'Some <script>dangerous</script> & unescaped <strong>markup</strong>',
],
'More <script>dangerous</script> markup' => [
3 => 'Three',
],
];
return $values;
}
/**
* Implements callback_allowed_values_function().
*
* @todo This function violates the recommendation in options_allowed_values()
* to return a list of all possible values in any context when $items is
* NULL. Since this is not yet used for testing Views integration, that is
* alright for now. Fix this in https://www.drupal.org/node/2012130.
*
* @see options_allowed_values()
*/
function options_test_dynamic_values_callback(FieldStorageDefinitionInterface $definition, FieldableEntityInterface $entity = NULL, &$cacheable = NULL) {
$values = [];
if (isset($entity)) {
$cacheable = FALSE;
$values = [
$entity
->label(),
$entity
->toUrl()
->toString(),
$entity
->uuid(),
$entity
->bundle(),
];
}
// We need the values of the entity as keys.
return array_combine($values, $values);
}
Functions
Name | Description |
---|---|
options_test_allowed_values_callback | Implements callback_allowed_values_function(). |
options_test_dynamic_values_callback | Implements callback_allowed_values_function(). |