forked from wallabag/wallabag
Fix API allowed_registration
Two configuration options need to be enabled to allow user registration via the API: 1) fosuser_registration, which indicates whether registration is allowed at all (frontend and API) 2) api_user_registration, which indicates whether registration is allowed via the API
This commit is contained in:
@ -2,6 +2,7 @@
|
||||
|
||||
namespace Tests\Wallabag\ApiBundle\Controller;
|
||||
|
||||
use Craue\ConfigBundle\Util\Config;
|
||||
use Tests\Wallabag\ApiBundle\WallabagApiTestCase;
|
||||
|
||||
class WallabagRestControllerTest extends WallabagApiTestCase
|
||||
@ -35,4 +36,32 @@ class WallabagRestControllerTest extends WallabagApiTestCase
|
||||
|
||||
$this->assertSame('wallabag', $content['appname']);
|
||||
}
|
||||
|
||||
public function testAllowedRegistration()
|
||||
{
|
||||
// create a new client instead of using $this->client to be sure client isn't authenticated
|
||||
$client = static::createClient();
|
||||
|
||||
if (!$client->getContainer()->getParameter('fosuser_registration')) {
|
||||
$this->markTestSkipped('fosuser_registration is not enabled.');
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
$client->getContainer()->get(Config::class)->set('api_user_registration', 1);
|
||||
|
||||
$client->request('GET', '/api/info');
|
||||
|
||||
$content = json_decode($client->getResponse()->getContent(), true);
|
||||
|
||||
$this->assertTrue($content['allowed_registration']);
|
||||
|
||||
$client->getContainer()->get(Config::class)->set('api_user_registration', 0);
|
||||
|
||||
$client->request('GET', '/api/info');
|
||||
|
||||
$content = json_decode($client->getResponse()->getContent(), true);
|
||||
|
||||
$this->assertFalse($content['allowed_registration']);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user