protected function _getShareById()
{
$myshare = self::$share->getShareById(self::$shares['myshare']->getId());
$this->assertInstanceOf('Horde_Share_Object', $myshare);
$this->assertEquals(self::$shares['myshare'], $myshare);
$this->assertEquals('行事曆', $myshare->get('desc'));
$this->assertEquals('行事曆', $myshare->get('clob'));
$this->switchAuth('jane');
$janeshare = self::$share->getShareById(self::$shares['jane']['janeshare']->getId());
$janeshare->getPermission();
$this->assertInstanceOf('Horde_Share_Object', $janeshare);
$this->assertEquals(self::$shares['jane']['janeshare'], $janeshare);
$users = $janeshare->listUsers();
sort($users);
$this->assertEquals(array('jane', 'john', 'peter'), $users);
$users = $janeshare->listUsers(Horde_Perms::EDIT);
sort($users);
$this->assertEquals(array('jane', 'john'), $users);
$users = $janeshare->listUsers(Horde_Perms::DELETE);
sort($users);
$this->assertEquals(array('jane'), $users);
$this->assertEquals('Jane\'s Share', $janeshare->get('name'));
$this->assertTrue($janeshare->hasPermission('john', Horde_Perms::EDIT));
$groupshare = self::$share->getShareById(self::$shares['jane']['groupshare']->getId());
$groupshare->getPermission();
$this->assertInstanceOf('Horde_Share_Object', $groupshare);
$this->assertEquals(self::$shares['jane']['groupshare'], $groupshare);
$this->assertEquals(array('mygroup'), $groupshare->listGroups());
$this->assertEquals(array(), $groupshare->listGroups(Horde_Perms::EDIT));
$this->assertEquals(array('mygroup'), $groupshare->listGroups(Horde_Perms::DELETE));
$this->assertEquals('Group Share', $groupshare->get('name'));
$this->switchAuth('john');
}