From 03fb6fde5f02c4fce49fbe20ed384e693b805a0a Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sat, 26 Sep 2015 11:56:15 +0200 Subject: [PATCH] Add multiple database tests on Travis --- .travis.yml | 23 +++++--- app/config/config_test.yml | 11 ++-- app/config/parameters.yml.dist | 12 ++++- app/config/tests/parameters.yml.dist.mysql | 58 +++++++++++++++++++++ app/config/tests/parameters.yml.dist.pgsql | 58 +++++++++++++++++++++ app/config/tests/parameters.yml.dist.sqlite | 58 +++++++++++++++++++++ build.xml | 52 +++++++++++++++++- composer.lock | 26 ++++----- 8 files changed, 272 insertions(+), 26 deletions(-) create mode 100644 app/config/tests/parameters.yml.dist.mysql create mode 100644 app/config/tests/parameters.yml.dist.pgsql create mode 100644 app/config/tests/parameters.yml.dist.sqlite diff --git a/.travis.yml b/.travis.yml index 8d0cf817..f78c2b15 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,14 +13,22 @@ php: - 5.4 - 5.5 - 5.6 + - 7.0 - hhvm - - nightly + +env: + - DB=mysql + - DB=pgsql + - DB=sqlite matrix: fast_finish: true + exclude: + - php: hhvm + env: DB=pgsql # driver for PostgreSQL currently unsupported by HHVM, requires 3rd party dependency allow_failures: + - php: 7.0 - php: hhvm - - php: nightly branches: only: @@ -29,13 +37,16 @@ branches: install: - composer self-update -# build coverage only on one build, to speed up results feedbacks -# before_script: +before_script: + # disable xdebug since we don't use code-coverage for now + - phpenv config-rm xdebug.ini + # build coverage only on one build, to speed up results feedbacks # - if [[ "$TRAVIS_PHP_VERSION" = "5.6" ]]; then PHPUNIT_FLAGS="--coverage-clover=coverage.clover"; else PHPUNIT_FLAGS=""; fi; + - if [[ "$DB" = "pgsql" ]]; then psql -c 'create database wallabag;' -U postgres; fi; script: - - ant prepare - - bin/phpunit --exclude-group command-doctrine --debug $PHPUNIT_FLAGS + - ant prepare-$DB + - bin/phpunit --exclude-group command-doctrine -v # after_script: # - | diff --git a/app/config/config_test.yml b/app/config/config_test.yml index 4dca39d2..2fd489be 100644 --- a/app/config/config_test.yml +++ b/app/config/config_test.yml @@ -19,9 +19,14 @@ swiftmailer: doctrine: dbal: - driver: pdo_sqlite - path: %kernel.root_dir%/../data/db/wallabag_test.sqlite - host: localhost + driver: "%test_database_driver%" + host: "%test_database_host%" + port: "%test_database_port%" + dbname: "%test_database_name%" + user: "%test_database_user%" + password: "%test_database_password%" + charset: UTF8 + path: "%test_database_path%" orm: metadata_cache_driver: type: service diff --git a/app/config/parameters.yml.dist b/app/config/parameters.yml.dist index b3947207..c1f6bc1b 100644 --- a/app/config/parameters.yml.dist +++ b/app/config/parameters.yml.dist @@ -1,7 +1,7 @@ # This file is a "template" of what your parameters.yml file should look like parameters: - database_driver: pdo_sqlite - database_host: 127.0.0.1 + database_driver: pdo_sqlite + database_host: 127.0.0.1 database_port: ~ database_name: symfony database_user: root @@ -9,6 +9,14 @@ parameters: database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite" database_table_prefix: wallabag_ + test_database_driver: pdo_sqlite + test_database_host: 127.0.0.1 + test_database_port: ~ + test_database_name: ~ + test_database_user: ~ + test_database_password: ~ + test_database_path: "%kernel.root_dir%/../data/db/wallabag_test.sqlite" + mailer_transport: smtp mailer_host: 127.0.0.1 mailer_user: ~ diff --git a/app/config/tests/parameters.yml.dist.mysql b/app/config/tests/parameters.yml.dist.mysql new file mode 100644 index 00000000..d8c23634 --- /dev/null +++ b/app/config/tests/parameters.yml.dist.mysql @@ -0,0 +1,58 @@ +# This file is a "template" of what your parameters.yml file should look like +parameters: + database_driver: pdo_sqlite + database_host: 127.0.0.1 + database_port: ~ + database_name: symfony + database_user: root + database_password: ~ + database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite" + database_table_prefix: wallabag_ + + test_database_driver: pdo_mysql + test_database_host: localhost + test_database_port: 3306 + test_database_name: wallabag + test_database_user: root + test_database_password: ~ + test_database_path: ~ + + mailer_transport: smtp + mailer_host: 127.0.0.1 + mailer_user: ~ + mailer_password: ~ + + locale: en + + # A secret key that's used to generate certain security-related tokens + secret: ThisTokenIsNotSoSecretChangeIt + + # wallabag misc + app.version: 2.0.0-alpha + + # message to display at the bottom of the page + warning_message: > + You're trying wallabag v2, which is in alpha version. If you find a bug, please have a look to our issues list and open a new if necessary + + download_pictures: false # if true, pictures will be stored into data/assets for each article + + # Entry view + share_twitter: true + share_mail: true + share_shaarli: true + shaarli_url: http://myshaarli.com + share_diaspora: true + diaspora_url: http://diasporapod.com + flattr: true + carrot: true + show_printlink: true + export_epub: true + export_mobi: true + export_pdf: true + + # default user config + items_on_page: 12 + theme: material + language: en_US + from_email: no-reply@wallabag.org + rss_limit: 50 diff --git a/app/config/tests/parameters.yml.dist.pgsql b/app/config/tests/parameters.yml.dist.pgsql new file mode 100644 index 00000000..7dc63880 --- /dev/null +++ b/app/config/tests/parameters.yml.dist.pgsql @@ -0,0 +1,58 @@ +# This file is a "template" of what your parameters.yml file should look like +parameters: + database_driver: pdo_sqlite + database_host: 127.0.0.1 + database_port: ~ + database_name: symfony + database_user: root + database_password: ~ + database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite" + database_table_prefix: wallabag_ + + test_database_driver: pdo_pgsql + test_database_host: localhost + test_database_port: + test_database_name: wallabag + test_database_user: travis + test_database_password: ~ + test_database_path: ~ + + mailer_transport: smtp + mailer_host: 127.0.0.1 + mailer_user: ~ + mailer_password: ~ + + locale: en + + # A secret key that's used to generate certain security-related tokens + secret: ThisTokenIsNotSoSecretChangeIt + + # wallabag misc + app.version: 2.0.0-alpha + + # message to display at the bottom of the page + warning_message: > + You're trying wallabag v2, which is in alpha version. If you find a bug, please have a look to our issues list and open a new if necessary + + download_pictures: false # if true, pictures will be stored into data/assets for each article + + # Entry view + share_twitter: true + share_mail: true + share_shaarli: true + shaarli_url: http://myshaarli.com + share_diaspora: true + diaspora_url: http://diasporapod.com + flattr: true + carrot: true + show_printlink: true + export_epub: true + export_mobi: true + export_pdf: true + + # default user config + items_on_page: 12 + theme: material + language: en_US + from_email: no-reply@wallabag.org + rss_limit: 50 diff --git a/app/config/tests/parameters.yml.dist.sqlite b/app/config/tests/parameters.yml.dist.sqlite new file mode 100644 index 00000000..3ef7cda4 --- /dev/null +++ b/app/config/tests/parameters.yml.dist.sqlite @@ -0,0 +1,58 @@ +# This file is a "template" of what your parameters.yml file should look like +parameters: + database_driver: pdo_sqlite + database_host: 127.0.0.1 + database_port: ~ + database_name: symfony + database_user: root + database_password: ~ + database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite" + database_table_prefix: wallabag_ + + test_database_driver: pdo_sqlite + test_database_host: localhost + test_database_port: + test_database_name: ~ + test_database_user: ~ + test_database_password: ~ + test_database_path: "%kernel.root_dir%/../data/db/wallabag_test.sqlite" + + mailer_transport: smtp + mailer_host: 127.0.0.1 + mailer_user: ~ + mailer_password: ~ + + locale: en + + # A secret key that's used to generate certain security-related tokens + secret: ThisTokenIsNotSoSecretChangeIt + + # wallabag misc + app.version: 2.0.0-alpha + + # message to display at the bottom of the page + warning_message: > + You're trying wallabag v2, which is in alpha version. If you find a bug, please have a look to our issues list and open a new if necessary + + download_pictures: false # if true, pictures will be stored into data/assets for each article + + # Entry view + share_twitter: true + share_mail: true + share_shaarli: true + shaarli_url: http://myshaarli.com + share_diaspora: true + diaspora_url: http://diasporapod.com + flattr: true + carrot: true + show_printlink: true + export_epub: true + export_mobi: true + export_pdf: true + + # default user config + items_on_page: 12 + theme: material + language: en_US + from_email: no-reply@wallabag.org + rss_limit: 50 diff --git a/build.xml b/build.xml index 30ed2fa1..110011e8 100644 --- a/build.xml +++ b/build.xml @@ -1,17 +1,23 @@ - + + + + - + + + + @@ -41,6 +47,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/composer.lock b/composer.lock index ef060b5e..67b2c714 100644 --- a/composer.lock +++ b/composer.lock @@ -1355,16 +1355,16 @@ }, { "name": "j0k3r/php-readability", - "version": "v1.0.7", + "version": "v1.0.8", "source": { "type": "git", "url": "https://github.com/j0k3r/php-readability.git", - "reference": "1830dc45d4fccfe09d2d107ab59890f07adc35c4" + "reference": "f71c3a419623f821c245e0a003edfbf2c67f278e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/j0k3r/php-readability/zipball/1830dc45d4fccfe09d2d107ab59890f07adc35c4", - "reference": "1830dc45d4fccfe09d2d107ab59890f07adc35c4", + "url": "https://api.github.com/repos/j0k3r/php-readability/zipball/f71c3a419623f821c245e0a003edfbf2c67f278e", + "reference": "f71c3a419623f821c245e0a003edfbf2c67f278e", "shasum": "" }, "require": { @@ -1414,7 +1414,7 @@ "extraction", "html" ], - "time": "2015-09-20 19:05:55" + "time": "2015-09-23 19:09:38" }, { "name": "jdorn/sql-formatter", @@ -2970,20 +2970,20 @@ }, { "name": "symfony/symfony", - "version": "v2.7.4", + "version": "v2.7.5", "source": { "type": "git", "url": "https://github.com/symfony/symfony.git", - "reference": "1fdf23fe28876844b887b0e1935c9adda43ee645" + "reference": "619528a274647cffc1792063c3ea04c4fa8266a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/symfony/zipball/1fdf23fe28876844b887b0e1935c9adda43ee645", - "reference": "1fdf23fe28876844b887b0e1935c9adda43ee645", + "url": "https://api.github.com/repos/symfony/symfony/zipball/619528a274647cffc1792063c3ea04c4fa8266a0", + "reference": "619528a274647cffc1792063c3ea04c4fa8266a0", "shasum": "" }, "require": { - "doctrine/common": "~2.3", + "doctrine/common": "~2.4", "php": ">=5.3.9", "psr/log": "~1.0", "twig/twig": "~1.20|~2.0" @@ -3036,9 +3036,9 @@ }, "require-dev": { "doctrine/data-fixtures": "1.0.*", - "doctrine/dbal": "~2.2", + "doctrine/dbal": "~2.4", "doctrine/doctrine-bundle": "~1.2", - "doctrine/orm": "~2.2,>=2.2.3", + "doctrine/orm": "~2.4,>=2.4.5", "egulias/email-validator": "~1.2", "ircmaxell/password-compat": "~1.0", "monolog/monolog": "~1.11", @@ -3088,7 +3088,7 @@ "keywords": [ "framework" ], - "time": "2015-09-08 14:26:39" + "time": "2015-09-25 11:16:52" }, { "name": "tecnick.com/tcpdf", -- 2.41.0