Merge branch '2.2' into 2.3
This commit is contained in:
commit
e743b90607
|
@ -58,7 +58,7 @@ class BrokenExternalLink extends DataObject
|
||||||
public function canView($member = false)
|
public function canView($member = false)
|
||||||
{
|
{
|
||||||
$member = $member ? $member : Security::getCurrentUser();
|
$member = $member ? $member : Security::getCurrentUser();
|
||||||
$codes = array('content-authors', 'administrators');
|
$codes = ['CMS_ACCESS_CMSMain'];
|
||||||
return Permission::checkMember($member, $codes);
|
return Permission::checkMember($member, $codes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -8,21 +8,16 @@ use SilverStripe\ExternalLinks\Model\BrokenExternalLink;
|
||||||
class BrokenExternalLinkTest extends SapphireTest
|
class BrokenExternalLinkTest extends SapphireTest
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @param int $httpCode
|
|
||||||
* @param string $expected
|
|
||||||
* @dataProvider httpCodeProvider
|
* @dataProvider httpCodeProvider
|
||||||
*/
|
*/
|
||||||
public function testGetHTTPCodeDescription($httpCode, $expected)
|
public function testGetHTTPCodeDescription(int $httpCode, string $expected)
|
||||||
{
|
{
|
||||||
$link = new BrokenExternalLink();
|
$link = new BrokenExternalLink();
|
||||||
$link->HTTPCode = $httpCode;
|
$link->HTTPCode = $httpCode;
|
||||||
$this->assertSame($expected, $link->getHTTPCodeDescription());
|
$this->assertSame($expected, $link->getHTTPCodeDescription());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public function httpCodeProvider(): array
|
||||||
* @return array[]
|
|
||||||
*/
|
|
||||||
public function httpCodeProvider()
|
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
[200, '200 (OK)'],
|
[200, '200 (OK)'],
|
||||||
|
@ -32,4 +27,30 @@ class BrokenExternalLinkTest extends SapphireTest
|
||||||
[789, '789 (Unknown Response Code)'],
|
[789, '789 (Unknown Response Code)'],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function permissionProvider(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
['admin', 'ADMIN'],
|
||||||
|
['content-author', 'CMS_ACCESS_CMSMain'],
|
||||||
|
['asset-admin', 'CMS_ACCESS_AssetAdmin'],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @dataProvider permissionProvider
|
||||||
|
*/
|
||||||
|
public function testCanViewReport(string $user, string $permission)
|
||||||
|
{
|
||||||
|
$this->logOut();
|
||||||
|
$this->logInWithPermission($permission);
|
||||||
|
|
||||||
|
$link = new BrokenExternalLink();
|
||||||
|
|
||||||
|
if ($user === 'asset-admin') {
|
||||||
|
$this->assertFalse($link->canView());
|
||||||
|
} else {
|
||||||
|
$this->assertTrue($link->canView());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue