function EntityMethodConfigActionsTest::testSet
Tests set.
Attributes
#[TestWith([
"set",
[
"property_name" => "protected_property",
"value" => "Here be sandworms...",
],
])]
#[TestWith([
"setMultiple",
[
[
"property_name" => "protected_property",
"value" => "Here be sandworms...",
],
[
"property_name" => "label",
"value" => "New face",
],
],
])]
File
-
core/
tests/ Drupal/ KernelTests/ Core/ Recipe/ EntityMethodConfigActionsTest.php, line 111
Class
- EntityMethodConfigActionsTest
- Tests entity method config actions.
Namespace
Drupal\KernelTests\Core\RecipeCode
public function testSet(string $action_name, array $value) : void {
$storage = $this->container
->get(EntityTypeManagerInterface::class)
->getStorage('config_test');
$entity = $storage->create([
'id' => 'foo',
'label' => 'Behold!',
'protected_property' => 'Here be dragons...',
]);
$this->assertSame('Behold!', $entity->get('label'));
$this->assertSame('Here be dragons...', $entity->get('protected_property'));
$entity->save();
$this->configActionManager
->applyAction("entity_method:config_test.dynamic:{$action_name}", $entity->getConfigDependencyName(), $value);
$expected_values = array_is_list($value) ? $value : [
$value,
];
$entity = $storage->load('foo');
foreach ($expected_values as ['property_name' => $name, 'value' => $value]) {
$this->assertSame($value, $entity->get($name));
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.