コード例 #1
0
 public function testMakesByTypeThrowsExceptionWhenCustomPermissionIsNotPermission()
 {
     list($auth, $routes, $repo) = $this->getMocks();
     $instance = new Factory($auth, $routes, $repo);
     $instance->extend('custom', function ($target, $user, $registered) {
         return new \stdClass();
     });
     $mockUser = m::mock('Xpressengine\\Member\\Entities\\MemberEntityInterface');
     $auth->shouldReceive('user')->andReturn($mockUser);
     $mockRegistered1 = m::mock('Xpressengine\\Permission\\Registered');
     $mockRegistered1->name = 'plugin';
     $mockRegistered2 = m::mock('Xpressengine\\Permission\\Registered');
     $mockRegistered2->name = 'plugin.board';
     $mockRegistered2->shouldReceive('addParent');
     $repo->shouldReceive('fetchByType')->once()->with('default', 'custom')->andReturn([$mockRegistered1, $mockRegistered2]);
     try {
         $permissions = $instance->makesByType('custom');
         $this->assertTrue(false);
     } catch (\Exception $e) {
         $this->assertInstanceOf('Xpressengine\\Permission\\Exceptions\\NotMatchedInstanceException', $e);
     }
 }
コード例 #2
0
 /**
  * getMenuPermissions
  *
  * @return MenuPermission[]
  * @throws \Xpressengine\Permission\Exceptions\WrongInstanceException
  */
 public function getMenuPermissions()
 {
     if (count(static::$permissions) == 0) {
         static::$permissions = $this->permission->makesByType('menu');
     }
     return static::$permissions;
 }