2015-03-29 08:53:10 +00:00
|
|
|
<?php
|
|
|
|
|
2016-06-01 19:27:35 +00:00
|
|
|
namespace Tests\Wallabag\ApiBundle\Controller;
|
2015-03-29 08:53:10 +00:00
|
|
|
|
2023-02-17 09:46:07 +00:00
|
|
|
use Craue\ConfigBundle\Util\Config;
|
2016-06-01 19:27:35 +00:00
|
|
|
use Tests\Wallabag\ApiBundle\WallabagApiTestCase;
|
2015-03-29 08:53:10 +00:00
|
|
|
|
2015-11-01 22:42:52 +00:00
|
|
|
class WallabagRestControllerTest extends WallabagApiTestCase
|
2015-03-29 08:53:10 +00:00
|
|
|
{
|
2016-03-08 08:22:25 +00:00
|
|
|
public function testGetVersion()
|
|
|
|
{
|
2017-06-02 08:19:33 +00:00
|
|
|
// create a new client instead of using $this->client to be sure client isn't authenticated
|
2023-12-24 19:37:54 +00:00
|
|
|
$client = $this->createUnauthorizedClient();
|
2017-06-02 08:19:33 +00:00
|
|
|
$client->request('GET', '/api/version');
|
2016-03-07 14:16:27 +00:00
|
|
|
|
2017-07-01 07:52:38 +00:00
|
|
|
$this->assertSame(200, $client->getResponse()->getStatusCode());
|
2016-03-07 14:16:27 +00:00
|
|
|
|
2017-06-02 08:19:33 +00:00
|
|
|
$content = json_decode($client->getResponse()->getContent(), true);
|
2016-03-07 14:16:27 +00:00
|
|
|
|
2017-07-01 07:52:38 +00:00
|
|
|
$this->assertSame($client->getContainer()->getParameter('wallabag_core.version'), $content);
|
2016-03-07 14:16:27 +00:00
|
|
|
}
|
2019-01-15 09:17:11 +00:00
|
|
|
|
|
|
|
public function testGetInfo()
|
|
|
|
{
|
|
|
|
// create a new client instead of using $this->client to be sure client isn't authenticated
|
2023-12-24 19:37:54 +00:00
|
|
|
$client = $this->createUnauthorizedClient();
|
2019-01-15 09:17:11 +00:00
|
|
|
$client->request('GET', '/api/info');
|
|
|
|
|
|
|
|
$this->assertSame(200, $client->getResponse()->getStatusCode());
|
|
|
|
|
|
|
|
$content = json_decode($client->getResponse()->getContent(), true);
|
|
|
|
|
|
|
|
$this->assertArrayHasKey('appname', $content);
|
|
|
|
$this->assertArrayHasKey('version', $content);
|
|
|
|
$this->assertArrayHasKey('allowed_registration', $content);
|
|
|
|
|
|
|
|
$this->assertSame('wallabag', $content['appname']);
|
|
|
|
}
|
2023-02-17 09:46:07 +00:00
|
|
|
|
|
|
|
public function testAllowedRegistration()
|
|
|
|
{
|
|
|
|
// create a new client instead of using $this->client to be sure client isn't authenticated
|
2023-12-24 19:37:54 +00:00
|
|
|
$client = $this->createUnauthorizedClient();
|
2023-02-17 09:46:07 +00:00
|
|
|
|
|
|
|
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']);
|
|
|
|
}
|
2015-03-29 08:53:10 +00:00
|
|
|
}
|