public function testAddingARestServiceWithoutHttpMethodsProvidesDefaults() { $entity = new AuthorizationEntity(); $entity->addRestService('Foo\\V1\\Rest\\Session\\Controller', AuthorizationEntity::TYPE_ENTITY); $this->assertTrue($entity->has('Foo\\V1\\Rest\\Session\\Controller::__entity__')); $privileges = $entity->get('Foo\\V1\\Rest\\Session\\Controller::__entity__'); $this->assertEquals(['GET' => false, 'POST' => false, 'PATCH' => false, 'PUT' => false, 'DELETE' => false], $privileges); }
/** * Create default privileges for a list of REST services of the specified version * * @param array $services * @param AuthorizationEntity $entity * @param int $version */ protected function createDefaultPrivilegesForRestServices(array $services, AuthorizationEntity $entity, $version) { foreach ($services as $serviceName) { if (!preg_match('/' . preg_quote('\\') . 'V' . $version . preg_quote('\\') . '/', $serviceName)) { continue; } $entity->addRestService($serviceName, $entity::TYPE_ENTITY); $entity->addRestService($serviceName, $entity::TYPE_COLLECTION); } }