xref: /dokuwiki/.github/workflows/testLinux.yml (revision 2cf7c325f897f0ae87113cbffa6d7106a807c021)
1*2cf7c325SAndreas Gohrname: Linux Unit Tests
2*2cf7c325SAndreas Gohr
3*2cf7c325SAndreas Gohron: [push, pull_request]
4*2cf7c325SAndreas Gohr
5*2cf7c325SAndreas Gohrjobs:
6*2cf7c325SAndreas Gohr    run:
7*2cf7c325SAndreas Gohr        name: PHP ${{ matrix.php-versions }}
8*2cf7c325SAndreas Gohr        runs-on: ubuntu-latest
9*2cf7c325SAndreas Gohr
10*2cf7c325SAndreas Gohr        strategy:
11*2cf7c325SAndreas Gohr            matrix:
12*2cf7c325SAndreas Gohr                php-versions: ['7.2', '7.3', '7.4']
13*2cf7c325SAndreas Gohr            fail-fast: false
14*2cf7c325SAndreas Gohr
15*2cf7c325SAndreas Gohr        services:
16*2cf7c325SAndreas Gohr            mysql:
17*2cf7c325SAndreas Gohr                image: mysql:5.7
18*2cf7c325SAndreas Gohr                env:
19*2cf7c325SAndreas Gohr                    MYSQL_ALLOW_EMPTY_PASSWORD: yes
20*2cf7c325SAndreas Gohr                ports:
21*2cf7c325SAndreas Gohr                    - 3306:3306
22*2cf7c325SAndreas Gohr            postgres:
23*2cf7c325SAndreas Gohr                image: postgres:latest
24*2cf7c325SAndreas Gohr                env:
25*2cf7c325SAndreas Gohr                    POSTGRES_PASSWORD: postgres
26*2cf7c325SAndreas Gohr                ports:
27*2cf7c325SAndreas Gohr                    - 5432:5432
28*2cf7c325SAndreas Gohr        steps:
29*2cf7c325SAndreas Gohr            - name: Checkout
30*2cf7c325SAndreas Gohr              uses: actions/checkout@v2
31*2cf7c325SAndreas Gohr
32*2cf7c325SAndreas Gohr            - name: Setup PHP
33*2cf7c325SAndreas Gohr              uses: shivammathur/setup-php@v2
34*2cf7c325SAndreas Gohr              with:
35*2cf7c325SAndreas Gohr                  php-version: ${{ matrix.php-versions }}
36*2cf7c325SAndreas Gohr                  extensions: mbstring, intl, PDO, pdo_sqlite, pdo_mysql, pdo_pgsql, bz2
37*2cf7c325SAndreas Gohr
38*2cf7c325SAndreas Gohr            - name: Setup problem matchers
39*2cf7c325SAndreas Gohr              run: |
40*2cf7c325SAndreas Gohr                echo ::add-matcher::${{ runner.tool_cache }}/php.json
41*2cf7c325SAndreas Gohr                echo ::add-matcher::${{ runner.tool_cache }}/phpunit.json
42*2cf7c325SAndreas Gohr
43*2cf7c325SAndreas Gohr            - name: Setup PHPUnit
44*2cf7c325SAndreas Gohr              run: |
45*2cf7c325SAndreas Gohr                  php _test/fetchphpunit.php
46*2cf7c325SAndreas Gohr                  cd _test
47*2cf7c325SAndreas Gohr                  cp mysql.conf.php.dist mysql.conf.php
48*2cf7c325SAndreas Gohr                  cp pgsql.conf.php.dist pgsql.conf.php
49*2cf7c325SAndreas Gohr
50*2cf7c325SAndreas Gohr            - name: Run PHPUnit
51*2cf7c325SAndreas Gohr              run: |
52*2cf7c325SAndreas Gohr                cd _test
53*2cf7c325SAndreas Gohr                php phpunit.phar --verbose --stderr
54