class TestActionSetExpression
A wrapper around ActionSetExpression.
This class is needed because actions don't return anything when executed, so there is normally no way to test execution order of actions. This strategy is fragile because this test class MUST replicate the executeWithState() method of the parent class exactly as well as return the array of UUIDs.
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements \Drupal\Component\Plugin\PluginInspectionInterface, \Drupal\Component\Plugin\DerivativeInspectionInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
- class \Drupal\rules\Engine\ExpressionBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\rules\Engine\ExpressionInterface
- class \Drupal\rules\Engine\ExpressionContainerBase extends \Drupal\rules\Engine\ExpressionBase implements \Drupal\rules\Engine\ExpressionContainerInterface
- class \Drupal\rules\Engine\ActionExpressionContainer extends \Drupal\rules\Engine\ExpressionContainerBase implements \Drupal\rules\Engine\ActionExpressionContainerInterface, \Drupal\Core\Plugin\ContainerFactoryPluginInterface
- class \Drupal\rules\Plugin\RulesExpression\ActionSetExpression extends \Drupal\rules\Engine\ActionExpressionContainer
- class \Drupal\Tests\rules\Unit\TestActionSetExpression extends \Drupal\rules\Plugin\RulesExpression\ActionSetExpression
- class \Drupal\rules\Plugin\RulesExpression\ActionSetExpression extends \Drupal\rules\Engine\ActionExpressionContainer
- class \Drupal\rules\Engine\ActionExpressionContainer extends \Drupal\rules\Engine\ExpressionContainerBase implements \Drupal\rules\Engine\ActionExpressionContainerInterface, \Drupal\Core\Plugin\ContainerFactoryPluginInterface
- class \Drupal\rules\Engine\ExpressionContainerBase extends \Drupal\rules\Engine\ExpressionBase implements \Drupal\rules\Engine\ExpressionContainerInterface
- class \Drupal\rules\Engine\ExpressionBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\rules\Engine\ExpressionInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
Expanded class hierarchy of TestActionSetExpression
File
-
tests/
src/ Unit/ ActionSetExpressionTest.php, line 145
Namespace
Drupal\Tests\rules\UnitView source
class TestActionSetExpression extends ActionSetExpression {
/**
* {@inheritdoc}
*/
public function executeWithState(ExecutionStateInterface $state) {
$uuids = [];
// Use the iterator to ensure the actions are sorted.
foreach ($this as $action) {
$action->executeWithState($state);
$uuids[] = $action->getUuid();
}
// Return array of UUID in same order as the actions were executed.
return $uuids;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
ActionExpressionContainer::$actions | protected | property | List of actions that will be executed. | ||
ActionExpressionContainer::addAction | public | function | Creates an action expression and adds it to the container. | Overrides ActionExpressionContainerInterface::addAction | |
ActionExpressionContainer::addExpressionObject | public | function | Adds an expression object. | Overrides ExpressionContainerInterface::addExpressionObject | |
ActionExpressionContainer::deleteExpression | public | function | Deletes an expression identified by the specified UUID in the container. | Overrides ExpressionContainerInterface::deleteExpression | |
ActionExpressionContainer::getConfiguration | public | function | Gets this plugin's configuration. | Overrides ExpressionBase::getConfiguration | |
ActionExpressionContainer::getExpression | public | function | Looks up the expression by UUID in this container. | Overrides ExpressionContainerInterface::getExpression | |
ActionExpressionContainer::getIterator | public | function | Returns an iterator for expressions in this container. | Overrides ExpressionContainerInterface::getIterator | |
ActionExpressionContainer::__clone | public | function | PHP magic __clone function. | ||
ActionExpressionContainer::__construct | public | function | Constructor. | Overrides ExpressionBase::__construct | |
ActionSetExpression::allowsMetadataAssertions | protected | function | Determines whether child-expressions are allowed to assert metadata. | Overrides ExpressionContainerBase::allowsMetadataAssertions | |
ExpressionBase::$configEntityId | protected | property | The config entity this expression is associated with, if any. | ||
ExpressionBase::$configuration | protected | property | The plugin configuration. | ||
ExpressionBase::$root | protected | property | The root expression if this object is nested. | ||
ExpressionBase::$uuid | protected | property | The UUID of this expression. | ||
ExpressionBase::$weight | protected | property | The weight (list order) of this expression. | ||
ExpressionBase::calculateDependencies | public | function | Calculates dependencies for the configured plugin. | Overrides DependentPluginInterface::calculateDependencies | |
ExpressionBase::defaultConfiguration | public | function | Gets default configuration for this plugin. | Overrides ConfigurableInterface::defaultConfiguration | 2 |
ExpressionBase::execute | public | function | Executes a rules expression. | Overrides ExecutableInterface::execute | |
ExpressionBase::getFormHandler | public | function | Returns the form handling class for this expression. | Overrides ExpressionInterface::getFormHandler | 2 |
ExpressionBase::getLabel | public | function | The label of this expression element that can be shown in the UI. | Overrides ExpressionInterface::getLabel | 2 |
ExpressionBase::getRoot | public | function | Returns the root expression if this expression is nested. | Overrides ExpressionInterface::getRoot | |
ExpressionBase::getUuid | public | function | Returns the UUID of this expression if it is nested in another expression. | Overrides ExpressionInterface::getUuid | |
ExpressionBase::getWeight | public | function | Returns the list order of this expression. | Overrides ExpressionInterface::getWeight | |
ExpressionBase::setConfiguration | public | function | Sets the configuration for this plugin instance. | Overrides ConfigurableInterface::setConfiguration | 2 |
ExpressionBase::setRoot | public | function | Set the root expression for this expression if it is nested. | Overrides ExpressionInterface::setRoot | |
ExpressionBase::setUuid | public | function | Sets the UUID of this expression in an expression tree. | Overrides ExpressionInterface::setUuid | |
ExpressionBase::setWeight | public | function | Sets the list order of this expression in an expression tree. | Overrides ExpressionInterface::setWeight | |
ExpressionContainerBase::$expressionManager | protected | property | The expression manager. | ||
ExpressionContainerBase::$rulesDebugLogger | protected | property | The rules debug logger channel. | ||
ExpressionContainerBase::addExpression | public | function | Creates and adds an expression. | Overrides ExpressionContainerInterface::addExpression | |
ExpressionContainerBase::checkIntegrity | public | function | Verifies that this expression is configured correctly. | Overrides ExpressionInterface::checkIntegrity | 1 |
ExpressionContainerBase::create | public static | function | |||
ExpressionContainerBase::prepareExecutionMetadataState | public | function | Prepares the execution metadata state by adding metadata to it. | Overrides ExpressionInterface::prepareExecutionMetadataState | |
ExpressionContainerBase::prepareExecutionMetadataStateAfterTraversal | protected | function | Prepares execution metadata state after traversing through children. | 1 | |
ExpressionContainerBase::prepareExecutionMetadataStateBeforeTraversal | protected | function | Prepares execution metadata state before traversing through children. | 1 | |
ExpressionContainerBase::sortByWeightProperty | public static | function | Sorts an array of expressions by 'weight' property. | ||
PluginInspectionInterface::getPluginDefinition | public | function | Gets the definition of the plugin implementation. | 6 | |
PluginInspectionInterface::getPluginId | public | function | Gets the plugin_id of the plugin instance. | 2 | |
TestActionSetExpression::executeWithState | public | function | Execute the expression with a given Rules state. | Overrides ActionSetExpression::executeWithState |