summaryrefslogtreecommitdiffstats
path: root/.travis.yml
blob: 02876ee59d25571ea8e1acaaaa2dc4f3700317e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
language: php
php:
  - 5.3
  - 5.4
  - 5.5
  - 5.6
  - hhvm

matrix:
  include:
    - php: 5.4
      env: DB=oracle
    - php: 5.4
      env: DB=pgsql
    - php: 5.4
      env: DB=mysql
  allow_failures:
    - php: hhvm
  fast_finish: true

env:
  matrix:
    - DB=sqlite

before_script:
  # setup databases
  - wget https://raw.githubusercontent.com/owncloud/administration/master/travis-ci/setup_databases.sh
  - bash ./setup_databases.sh $DB

  # Additional PHP config
  - if [[ $HHVM == false ]] ; then phpenv config-add build/travis.php.ini ; fi

  # fetch Ocular (for test coverage upload)
  - wget https://scrutinizer-ci.com/ocular.phar

  # call setup for tests
  - build/prepareTests.sh $DB

script:
  - phpunit --version
  # Run PHP lint for each PHP version
  - if [[ $DB == 'sqlite' ]] ; then ant -f build/build.xml -Dbasedir=. prepare lint ; fi

  # Run tests
  - phpunit --configuration tests/phpunit-autotest.xml --coverage-clover tests/autotest-clover-$DB.xml --verbose --debug

  # Run JS tests just once (see test matrix - mysql is just run once)
  - if [[ $DB == 'mysql' ]] ; then ./autotest-js.sh ; fi

  # Upload coverage report
  - php ocular.phar code-coverage:upload --format=php-clover tests/autotest-clover-$DB.xml

branches:
  only:
    - master
    - stable5
    - stable6
    - stable7