]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Fix tests
authorJeremy Benoist <jeremy.benoist@gmail.com>
Wed, 17 Aug 2016 09:40:35 +0000 (11:40 +0200)
committerJeremy Benoist <jeremy.benoist@gmail.com>
Wed, 17 Aug 2016 12:34:39 +0000 (14:34 +0200)
Ensure tests after the InstallCommand test will have a clean database.
Previous attempt failed because of a foreign key

Also, nightly on Travis seems to target PHP 7.2-dev, so I put 7.1 in requirement and moved nightly in allowed failures.
And it seems xdebug isn't shipped with PHP 7.1, so I added a workaround to avoid build to fail when trying to remove xdebug.ini file.

.travis.yml
tests/Wallabag/CoreBundle/Command/InstallCommandTest.php

index 1a33198a283ada9edf0a7c446f788eaa6dfc6bef..a387fc135e0dc1e12ac675ba6f545c2612a9f7c6 100644 (file)
@@ -20,6 +20,7 @@ php:
     - 5.5
     - 5.6
     - 7.0
+    - 7.1
     - nightly
     - hhvm
 
@@ -38,6 +39,7 @@ matrix:
           env: DB=pgsql  # driver for PostgreSQL currently unsupported by HHVM, requires 3rd party dependency
     allow_failures:
         - php: hhvm
+        - php: nightly
 
 # exclude v1 branches
 branches:
@@ -46,7 +48,8 @@ branches:
 
 before_script:
     - if [[ $TRAVIS_PHP_VERSION != hhvm ]]; then echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi;
-    - if [[ $TRAVIS_PHP_VERSION != hhvm ]]; then phpenv config-rm xdebug.ini; fi;
+    # xdebug isn't enable for PHP 7.1
+    - if [[ $TRAVIS_PHP_VERSION != '7.1' && $TRAVIS_PHP_VERSION != 'hhvm' ]]; then phpenv config-rm xdebug.ini; fi
     - composer self-update --no-progress
     - if [[ "$DB" = "pgsql" ]]; then psql -c 'create database wallabag_test;' -U postgres; fi;
 
index 6c6ce0873ff40ee73f85146243e7ccbd6603c673..089a1c5fee9a36a2ec6d093d66373581648859d8 100644 (file)
@@ -28,16 +28,32 @@ class InstallCommandTest extends WallabagCoreTestCase
              *
              * http://stackoverflow.com/a/14374832/569101
              */
-            $this->markTestSkipped('PostgreSQL spotted: can find a good way to drop current database, skipping.');
+            $this->markTestSkipped('PostgreSQL spotted: can\'t find a good way to drop current database, skipping.');
         }
     }
 
+    /**
+     * Ensure next tests will have a clean database
+     */
     public static function tearDownAfterClass()
     {
         $application = new Application(static::$kernel);
         $application->setAutoExit(false);
 
-        $code = $application->run(new ArrayInput([
+        $application->run(new ArrayInput([
+            'command' => 'doctrine:schema:drop',
+            '--no-interaction' => true,
+            '--force' => true,
+            '--env' => 'test',
+        ]), new NullOutput());
+
+        $application->run(new ArrayInput([
+            'command' => 'doctrine:schema:create',
+            '--no-interaction' => true,
+            '--env' => 'test',
+        ]), new NullOutput());
+
+        $application->run(new ArrayInput([
             'command' => 'doctrine:fixtures:load',
             '--no-interaction' => true,
             '--env' => 'test',