예제 #1
0
 /**
  * @dataProvider configurationForEvaluateDataProvider
  */
 public function testAssembleWithEvaluateResult($yaml, $context, $expected)
 {
     $language = new ConfigExpressions();
     $configuration = Yaml::parse($yaml);
     $this->assertEquals($expected, $language->evaluate($configuration, $context));
     $expr = $language->getExpression($configuration);
     $normalizedConfiguration = $expr->toArray();
     $this->assertEquals($expected, $language->evaluate($normalizedConfiguration, $context));
 }
예제 #2
0
 /**
  * @param Email $email
  * @param array $expr
  *
  * @return bool
  */
 protected function isExprApplicable(Email $email, array $expr)
 {
     return (bool) $this->configExpressions->evaluate($expr, $email);
 }
예제 #3
0
 public function testEvaluateByExpression()
 {
     $context = ['foo' => ' '];
     $expr = ['@empty' => [['@trim' => '$foo']]];
     $this->assertTrue($this->language->evaluate($this->language->getExpression($expr), $context));
 }