Skipping all Posgres test for wallabag:install

We already faced this problem but we are facing it again.
d502762598

It seems we can drop a database properly using wallabag:install.

The server log keep saying:
ERROR:  source database "template1" is being accessed by other users
DETAIL:  There is 1 other session using the database.
STATEMENT:  CREATE DATABASE "wallabag_test"

Which means, it can't remove the database wallabag_test because one other person is using it.
This commit is contained in:
Jeremy Benoist 2016-02-29 16:22:30 +01:00
parent dfad9ba0f9
commit 3c39f5ac41
2 changed files with 19 additions and 21 deletions

View file

@ -193,7 +193,7 @@ class InstallCommand extends ContainerAwareCommand
$this->defaultOutput->writeln('<info><comment>Step 3 of 4.</comment> Administration setup.</info>');
$questionHelper = $this->getHelperSet()->get('question');
$question = new ConfirmationQuestion('Would you like to create a new admin user (recommended) ? (y/N)', true);
$question = new ConfirmationQuestion('Would you like to create a new admin user (recommended) ? (Y/n)', true);
if (!$questionHelper->ask($this->defaultInput, $this->defaultOutput, $question)) {
return $this;

View file

@ -14,6 +14,24 @@ use Wallabag\CoreBundle\Tests\WallabagCoreTestCase;
class InstallCommandTest extends WallabagCoreTestCase
{
public function setUp()
{
parent::setUp();
if ($this->getClient()->getContainer()->get('doctrine')->getConnection()->getDriver() instanceof \Doctrine\DBAL\Driver\PDOPgSql\Driver) {
/*
* LOG: statement: CREATE DATABASE "wallabag"
* ERROR: source database "template1" is being accessed by other users
* DETAIL: There is 1 other session using the database.
* STATEMENT: CREATE DATABASE "wallabag"
* FATAL: database "wallabag" does not exist
*
* http://stackoverflow.com/a/14374832/569101
*/
$this->markTestSkipped('PostgreSQL spotted: can find a good way to drop current database, skipping.');
}
}
public static function tearDownAfterClass()
{
$application = new Application(static::$kernel);
@ -91,19 +109,6 @@ class InstallCommandTest extends WallabagCoreTestCase
public function testRunInstallCommandWithDatabaseRemoved()
{
if ($this->getClient()->getContainer()->get('doctrine')->getConnection()->getDriver() instanceof \Doctrine\DBAL\Driver\PDOPgSql\Driver) {
/*
* LOG: statement: CREATE DATABASE "wallabag"
* ERROR: source database "template1" is being accessed by other users
* DETAIL: There is 1 other session using the database.
* STATEMENT: CREATE DATABASE "wallabag"
* FATAL: database "wallabag" does not exist
*
* http://stackoverflow.com/a/14374832/569101
*/
$this->markTestSkipped('PostgreSQL spotted: can find a good way to drop current database, skipping.');
}
$application = new Application($this->getClient()->getKernel());
$application->add(new DropDatabaseDoctrineCommand());
@ -184,13 +189,6 @@ class InstallCommandTest extends WallabagCoreTestCase
public function testRunInstallCommandChooseNothing()
{
if ($this->getClient()->getContainer()->get('doctrine')->getConnection()->getDriver() instanceof \Doctrine\DBAL\Driver\PDOPgSql\Driver) {
/*
* @see testRunInstallCommandWithDatabaseRemoved
*/
$this->markTestSkipped('PostgreSQL spotted: can find a good way to drop current database, skipping.');
}
$application = new Application($this->getClient()->getKernel());
$application->add(new InstallCommand());
$application->add(new DropDatabaseDoctrineCommand());