function ContextIntegrationTest::testRequiredNullValue

Tests that a required context value that is NULL throws an exception.

File

tests/src/Kernel/ContextIntegrationTest.php, line 48

Class

ContextIntegrationTest
Tests the extended core context API with Rules.

Namespace

Drupal\Tests\rules\Kernel

Code

public function testRequiredNullValue() {
    // Configure a simple rule with one action. The required 'text' context is
    // set to be NULL.
    $action = $this->expressionManager
        ->createInstance('rules_action', ContextConfig::create()->setConfigKey('action_id', 'rules_test_string')
        ->setValue('text', NULL)
        ->toArray());
    $rule = $this->expressionManager
        ->createRule();
    $rule->addExpressionObject($action);
    try {
        $rule->execute();
        $this->fail('No exception thrown when required context value is NULL');
    } catch (EvaluationException $e) {
        $this->assertTrue(TRUE, 'Exception thrown as expected when a required context is NULL');
    }
}