public function test_export_create() { $rule = new block_xp_rule_property(block_xp_rule_base::CT, 'I', 'str'); $newrule = block_xp_rule::create($rule->export()); $this->assertEquals($rule, $newrule); $rule = new block_xp_rule_property(block_xp_rule_base::CT, 'I', 'str'); $rs = new block_xp_ruleset(array($rule), block_xp_ruleset::ALL); $newrs = block_xp_rule::create($rs->export()); $this->assertEquals($rs, $newrs); // Test with bad data. $data = $rs->export(); $data['_class'] = 'Does not exist'; $this->assertFalse(block_xp_rule::create($data)); }
/** * Load the rule from {@link self::$ruledata}. * * @return void */ protected function load_rule() { $ruledata = json_decode($this->ruledata, true); $this->rule = block_xp_rule::create($ruledata); }
/** * Import the properties. * * @param array $properties Array of properties acquired from {@link self::export()}. * @return exportable */ protected function import(array $properties) { if (isset($properties['rules'])) { $ruleslist = array(); foreach ($properties['rules'] as $rule) { $ruleslist[] = block_xp_rule::create($rule); } $this->rules = $ruleslist; } unset($properties['rules']); parent::import($properties); }
public function test_export_create() { $rule = new block_xp_rule_property(block_xp_rule_base::CT, 'I', 'str'); $newrule = block_xp_rule::create($rule->export()); $this->assertEquals($rule, $newrule); $rule = new block_xp_rule_property(block_xp_rule_base::CT, 'I', 'str'); $rs = new block_xp_ruleset(array($rule), block_xp_ruleset::ALL); $newrs = block_xp_rule::create($rs->export()); $this->assertEquals($rs, $newrs); }