public function testCatchAll()
 {
     $rules = [["class" => "*", "method" => "*", "requiredPermissions" => [self::SOME_PERMISSION]]];
     $wikiaAccessRules = new WikiaAccessRules($rules);
     $result = $wikiaAccessRules->getRequiredPermissionsFor(self::FOO_CONTROLLER, self::FOO_METHOD);
     $this->assertEquals([self::SOME_PERMISSION], $result);
 }
 /**
  * @param WikiaApp $app
  * @param $controller WikiaController
  * @param $method
  * @throws PermissionsException
  */
 private function testIfUserHasPermissionsOrThrow(WikiaApp $app, $controller, $method)
 {
     $nirvanaAccessRules = WikiaAccessRules::instance();
     $permissions = $nirvanaAccessRules->getRequiredPermissionsFor(get_class($controller), $method);
     foreach ($permissions as $permission) {
         if (!($app->wg->User->isAllowed($permission) || $controller->isAnonAccessAllowedInCurrentContext())) {
             throw new PermissionsException($permission);
         }
     }
 }