/**
  * {@inheritdoc}
  */
 public function getRuleset($feature)
 {
     if (isset($this->_generated_rulesets[$feature])) {
         return $this->_generated_rulesets[$feature];
     }
     $ruleset = new Ruleset();
     if (!isset($this->_config[$feature])) {
         return $ruleset;
     }
     $raw_rules = $this->_config[$feature];
     foreach ($raw_rules as $rule_info) {
         $rule = RuleFactory::create($rule_info['type'], $rule_info['params'], $feature);
         $ruleset->addRule($rule);
     }
     // foreach raw_rules
     $this->_generated_rulesets[$feature] = $ruleset;
     return $ruleset;
 }
 /**
  * @test
  */
 public function createIpRangeRuleFail()
 {
     $this->expectException(MissingRuleParameterException::class);
     RuleFactory::create(IpRangeRule::RULE_NAME, []);
 }