2 # - run testsuite for every PHP version
3 # - run lint for every PHP version
4 # - run Selenium for single PHP version
31 - TESTSUITE_URL=http://127.0.0.1:8000
34 - if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then source ~/virtualenv/python3.6/bin/activate ; fi
35 - ./test/ci-install-$CI_MODE
36 - if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then case "$TRAVIS_PHP_VERSION" in hhvm*) ;; *) phpenv config-add test/php-noprofile.ini ;; esac ; fi
39 - export TESTSUITE_PASSWORD=`openssl rand -base64 30`
40 - export TESTSUITE_BROWSERSTACK_KEY=`echo cHlDcHJTNmZwZjVlaUR2RmV6VkU= | base64 --decode`
41 - export PATH=~/.composer/vendor/bin/:$PATH
42 - mysql -uroot -e "CREATE DATABASE IF NOT EXISTS test"
43 - mysql -uroot < sql/create_tables.sql
44 - mysql -uroot -e "SET PASSWORD = PASSWORD('$TESTSUITE_PASSWORD')"
45 - ./test/start-local-server
48 - ./scripts/generate-mo --quiet
49 - if [ $CI_MODE = test ] ; then ./test/ci-lint ; fi
53 - if [ -f vendor/bin/codacycoverage ] ; then php vendor/bin/codacycoverage clover || true ; fi
54 - if [ -f php.log ] ; then cat php.log ; fi
55 - if [ -f nginx-error.log ] ; then cat nginx-error.log ; fi
56 - if [ -f build/logs/phpunit.json ] ; then ./scripts/phpunit-top-tests build/logs/phpunit.json ; fi
57 - if [ -f config.inc.php ] ; then rm -rf config.inc.php; fi
60 - bash <(curl -s https://codecov.io/bash)
80 - brew link --force gettext
81 - echo "memory_limit=-1" > /usr/local/etc/php/7.3/conf.d/50-travis.ini
82 - echo "pcre.jit=0" >> /usr/local/etc/php/7.3/conf.d/50-travis.ini
96 name: "Run tests using phpunit 8"
98 - composer require --no-interaction php>=7.1
99 - composer remove phpunit/phpunit-selenium --dev --no-interaction
100 - composer remove phpunit/phpunit --dev --no-interaction
101 - composer require --dev --no-interaction phpunit/phpunit ^8
102 - rm -rf test/selenium
103 - "find test/ -type f -print0 | xargs -0 sed -i 's/function setUpBeforeClass()/function setUpBeforeClass(): void/g'"
104 - "find test/ -type f -print0 | xargs -0 sed -i 's/function setUp()/function setUp(): void/g'"
105 - "find test/ -type f -print0 | xargs -0 sed -i 's/function tearDown()/function tearDown(): void/g'"
107 env: CI_MODE=test DBASE=true
109 - pecl channel-update pecl.php.net
110 - pecl install dbase-7.0.0beta1
111 - test/ci-install-test
113 env: CI_MODE=test DBASE=true
115 - pecl channel-update pecl.php.net
117 - test/ci-install-test
121 - env: CI_MODE=test DBASE=true
126 - $HOME/.composer/cache/
129 # Install APT packages
130 # - git > 2.5.1 needed for worktrees
131 # - mysql server does not seem to be always present on Travis Trusty environment