예제 #1
0
 /**
  * Memory::dropResourceAccess parameter validation
  */
 public function testMemoryDropResourceAccessParameter()
 {
     $acl = new Phalcon\Acl\Adapter\Memory();
     $tests = array('int' => 123, 'double' => 123.456, 'array' => array('test'), 'empty_array' => array(), 'bool' => false, 'object' => new \stdClass(), 'string' => 'test', 'null' => null);
     $exceptions = 0;
     foreach ($tests as $name => $test) {
         if ($name === 'string') {
             continue;
         }
         foreach ($tests as $second) {
             try {
                 $acl->dropResourceAccess($test, $second);
             } catch (Phalcon\Acl\Exception $e) {
                 $exceptions++;
             }
         }
     }
     $this->assertEquals($exceptions, 56);
     $exceptions = 0;
     foreach ($tests as $name => $test) {
         if ($name === 'string' || $name === 'array' || $name === 'empty_array') {
             continue;
         }
         foreach ($tests as $second) {
             try {
                 $acl->dropResourceAccess($second, $test);
             } catch (Phalcon\Acl\Exception $e) {
                 $exceptions++;
             }
         }
     }
     $this->assertEquals($exceptions, 40);
 }