PHRAS-508_acl-cache

- refactor : acl strings changed to ACL class constants
 - code cleanup
 - wip but try to merge for bc break test
This commit is contained in:
Jean-Yves Gaulier
2016-10-26 16:12:25 +02:00
parent 642da0fca5
commit 0c75189a64
28 changed files with 641 additions and 496 deletions

View File

@@ -1,6 +1,8 @@
<?php
namespace Alchemy\Tests\Phrasea\Controller\Admin;
use \Databox;
use Symfony\Component\HttpKernel\Client;
/**
@@ -339,29 +341,34 @@ class UsersTest extends \PhraseanetAuthenticatedWebTestCase
self::$DI['app']->getAclForUser($user)->give_access_to_sbas(array_keys(self::$DI['app']->getDataboxes()));
/** @var Databox $databox */
foreach (self::$DI['app']->getDataboxes() as $databox) {
$rights = [
\ACL::BAS_MANAGE => '1',
\ACL::BAS_MODIFY_STRUCT => '1',
\ACL::BAS_MODIF_TH => '1',
\ACL::BAS_CHUPUB => '1',
];
self::$DI['app']->getAclForUser($user)->update_rights_to_sbas($databox->get_sbas_id(), $rights);
self::$DI['app']->getAclForUser($user)
->update_rights_to_sbas(
$databox->get_sbas_id(),
[
\ACL::BAS_MANAGE => true,
\ACL::BAS_MODIFY_STRUCT => true,
\ACL::BAS_MODIF_TH => true,
\ACL::BAS_CHUPUB => true,
]
);
foreach ($databox->get_collections() as $collection) {
$base_id = $collection->get_base_id();
self::$DI['app']->getAclForUser($user)->give_access_to_base([$base_id]);
$rights = [
\ACL::CANPUTINALBUM => '1',
\ACL::CANDWNLDHD => '1',
'candwnldsubdef' => '1',
\ACL::NOWATERMARK => '1'
];
self::$DI['app']->getAclForUser($user)
->update_rights_to_base(
$collection->get_base_id(),
[
\ACL::CANPUTINALBUM => true,
\ACL::CANDWNLDHD => true,
\ACL::NOWATERMARK => true
]
);
self::$DI['app']->getAclForUser($user)->update_rights_to_base($collection->get_base_id(), $rights);
break;
}
}
@@ -444,7 +451,13 @@ class UsersTest extends \PhraseanetAuthenticatedWebTestCase
// create a template
if (null === self::$DI['app']['repo.users']->findByLogin('csv_template')) {
$user = self::$DI['app']['manipulator.user']->createTemplate('csv_template', self::$DI['app']->getAuthenticatedUser());
self::$DI['app']->getAclForUser($user)->update_rights_to_base(self::$DI['collection']->get_base_id(), ['actif'=> 1]);
self::$DI['app']->getAclForUser($user)
->update_rights_to_base(
self::$DI['collection']->get_base_id(),
[
\ACL::ACTIF => true
]
);
}
$nativeQueryMock = $this->getMockBuilder('Alchemy\Phrasea\Model\NativeQueryProvider')

View File

@@ -1009,13 +1009,14 @@ class ApiJsonTest extends ApiTestCase
if ('none' !== $collection->get_pub_wm()) {
$collection->set_public_presentation('none');
}
$app->getAclForUser(self::$DI['user_notAdmin'])->update_rights_to_base(
$collection->get_base_id(),
[
\ACL::CANDWNLDPREVIEW => 1,
\ACL::CANDWNLDHD => 1
]
);
$app->getAclForUser(self::$DI['user_notAdmin'])
->update_rights_to_base(
$collection->get_base_id(),
[
\ACL::CANDWNLDPREVIEW => true,
\ACL::CANDWNLDHD => true
]
);
/** @var \record_adapter $record_1 */
$record_1 = self::$DI['record_1'];
@@ -1053,10 +1054,14 @@ class ApiJsonTest extends ApiTestCase
{
$this->setToken($this->userAccessToken);
self::$DI['app']->getAclForUser(self::$DI['user_notAdmin'])->update_rights_to_base(self::$DI['collection']->get_base_id(), array(
\ACL::CANDWNLDPREVIEW => 1,
\ACL::CANDWNLDHD => 0
));
self::$DI['app']->getAclForUser(self::$DI['user_notAdmin'])
->update_rights_to_base(
self::$DI['collection']->get_base_id(),
[
\ACL::CANDWNLDPREVIEW => true,
\ACL::CANDWNLDHD => false
]
);
$route = '/api/v1/records/' . self::$DI['record_1']->get_sbas_id() . '/' . self::$DI['record_1']->get_record_id() . '/embed/';
@@ -1077,13 +1082,14 @@ class ApiJsonTest extends ApiTestCase
{
$this->setToken($this->userAccessToken);
self::$DI['app']->getAclForUser(self::$DI['user_notAdmin'])->update_rights_to_base(
self::$DI['collection']->get_base_id(),
[
\ACL::CANDWNLDPREVIEW => 0,
\ACL::CANDWNLDHD => 0
]
);
self::$DI['app']->getAclForUser(self::$DI['user_notAdmin'])
->update_rights_to_base(
self::$DI['collection']->get_base_id(),
[
\ACL::CANDWNLDPREVIEW => false,
\ACL::CANDWNLDHD => false
]
);
$route = '/api/v1/records/' . self::$DI['record_1']->get_sbas_id() . '/' . self::$DI['record_1']->get_record_id() . '/embed/';

View File

@@ -79,7 +79,12 @@ class RecordsRequestTest extends \PhraseanetAuthenticatedTestCase
public function testSimpleWithoutSbasRights()
{
self::$DI['app']->getAclForUser(self::$DI['app']->getAuthenticatedUser())
->update_rights_to_sbas(self::$DI['record_2']->get_sbas_id(), [\ACL::BAS_CHUPUB => 0]);
->update_rights_to_sbas(
self::$DI['record_2']->get_sbas_id(),
[
\ACL::BAS_CHUPUB => false
]
);
$request = new Request([
'lst' => implode(';', [
@@ -107,7 +112,9 @@ class RecordsRequestTest extends \PhraseanetAuthenticatedTestCase
self::$DI['app']->getAclForUser(self::$DI['app']->getAuthenticatedUser())
->update_rights_to_base(
self::$DI['record_2']->get_base_id(),
[\ACL::CHGSTATUS => 0]
[
\ACL::CHGSTATUS => false
]
);
$request = new Request([