Example #1
0
 function test_set_mixed_rules()
 {
     ACL::clear();
     $field_rule = array(array('test', array('id' => array('actions' => array('select', 'update')))), array('test', array('name' => array('actions' => array('select', 'update')))));
     ACL::set_rules($field_rule, \CrossORM\RULE_TYPE_FIELD);
     $table_rule = array('test', array('actions' => array('update', 'delete')));
     ACL::set_rule($table_rule, \CrossORM\RULE_TYPE_TABLE);
     $full_rule = array('tables' => array('test' => array('actions' => array('select'))));
     ACL::set_rule($full_rule);
     $rules = ACL::get_rules();
     $this->assertObjectHasAttribute('default_default', $rules, 'ACL Rules missing default actor at root of object');
     echo json_encode(array('field_rule' => $field_rule, 'table_rule' => $table_rule, 'full_rule' => $full_rule, 'result' => $rules, 'flat' => ACL::get_rules(true)), JSON_NUMERIC_CHECK);
 }