Beispiel #1
0
 public function test_featureWithRuleBuilder()
 {
     $rb = new RuleBuilder();
     $rule = $rb->create($rb['admin.users']->setContains($rb['username']));
     $feature = new Feature('test.feature', $rule);
     $context = new Context(array('admin.users' => array('joshua'), 'username' => 'joshua'));
     $feature->setContext($context);
     $this->assertTrue($feature->isEnabled());
     $rb = new RuleBuilder();
     $rb->registerOperatorNamespace('Dspacelabs\\Component\\Feature\\Operator');
     $feature = new Feature('test.feature', $rb['always']->enabled());
     $this->assertTrue($feature->isEnabled());
     $rb = new RuleBuilder();
     $rb->registerOperatorNamespace('Dspacelabs\\Component\\Feature\\Operator');
     $feature = new Feature('test.feature', $rb['always']->disabled());
     $this->assertTrue($feature->isDisabled());
     $rb = new RuleBuilder();
     $feature = new Feature('test.feature', $rb['username']->equalTo('joshua'));
     $this->assertTrue($feature->isDisabled());
     $feature->setContext(new Context(array('username' => 'joshua')));
     $this->assertTrue($feature->isEnabled());
 }
Beispiel #2
0
 /**
  * @expectedException LogicException
  * @expectedExceptionMessage Unknown operator: "aLotBiggerThan"
  */
 public function testLogicExceptionOnUnknownOperator()
 {
     $rb = new RuleBuilder();
     $rb->registerOperatorNamespace('\\Ruler\\Test\\Fixtures');
     $varA = $rb['a'];
     $varA->aLotBiggerThan(1);
 }