2015-02-08 22:05:51 +00:00
|
|
|
<?php
|
|
|
|
|
2016-06-01 19:27:35 +00:00
|
|
|
namespace Tests\Wallabag\CoreBundle;
|
2015-02-08 22:05:51 +00:00
|
|
|
|
|
|
|
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
|
|
|
|
|
2015-03-29 08:53:10 +00:00
|
|
|
abstract class WallabagCoreTestCase extends WebTestCase
|
2015-02-08 22:05:51 +00:00
|
|
|
{
|
|
|
|
private $client = null;
|
|
|
|
|
|
|
|
public function getClient()
|
|
|
|
{
|
|
|
|
return $this->client;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function setUp()
|
|
|
|
{
|
2015-11-06 21:08:51 +00:00
|
|
|
parent::setUp();
|
|
|
|
|
2015-02-08 22:05:51 +00:00
|
|
|
$this->client = static::createClient();
|
|
|
|
}
|
|
|
|
|
2015-02-10 21:32:42 +00:00
|
|
|
public function logInAs($username)
|
2015-02-08 22:05:51 +00:00
|
|
|
{
|
|
|
|
$crawler = $this->client->request('GET', '/login');
|
|
|
|
$form = $crawler->filter('button[type=submit]')->form();
|
2016-04-12 09:36:01 +00:00
|
|
|
$data = [
|
2015-02-10 21:32:42 +00:00
|
|
|
'_username' => $username,
|
2015-02-17 20:03:23 +00:00
|
|
|
'_password' => 'mypassword',
|
2016-04-12 09:36:01 +00:00
|
|
|
];
|
2015-02-08 22:05:51 +00:00
|
|
|
|
|
|
|
$this->client->submit($form, $data);
|
|
|
|
}
|
2016-01-15 14:28:22 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Return the user id of the logged in user.
|
|
|
|
* You should be sure that you called `logInAs` before.
|
|
|
|
*
|
|
|
|
* @return int
|
|
|
|
*/
|
|
|
|
public function getLoggedInUserId()
|
|
|
|
{
|
|
|
|
$token = static::$kernel->getContainer()->get('security.token_storage')->getToken();
|
|
|
|
|
|
|
|
if (null !== $token) {
|
|
|
|
return $token->getUser()->getId();
|
|
|
|
}
|
|
|
|
|
|
|
|
throw new \RuntimeException('No logged in User.');
|
|
|
|
}
|
2015-02-08 22:05:51 +00:00
|
|
|
}
|