/**
* Tests that context requirements is satisfied as expected.
*
* @param bool $expected
* The expected outcome.
* @param \Drupal\Core\Plugin\Context\ContextDefinition $requirement
* The requirement to check against.
* @param \Drupal\Core\Plugin\Context\ContextDefinition $definition
* The context definition to check.
* @param mixed $value
* (optional) The value to set on the context, defaults to NULL.
*
* @covers ::isSatisfiedBy
* @covers ::dataTypeMatches
* @covers ::getSampleValues
* @covers ::getConstraintObjects
*
* @dataProvider providerTestIsSatisfiedBy
*/