]> BookStack Code Mirror - bookstack/blob - .github/workflows/phpunit.yml
4a641c56b5d15055f249c6169fe1d3e59c73778f
[bookstack] / .github / workflows / phpunit.yml
1 name: phpunit
2
3 on:
4   push:
5     branches:
6       - master
7       - release
8   pull_request:
9     branches:
10       - '*'
11       - '*/*'
12       - '!l10n_master'
13
14 jobs:
15   build:
16     runs-on: ubuntu-latest
17     strategy:
18       matrix:
19         php: [7.2, 7.3]
20     steps:
21     - uses: actions/checkout@v1
22
23     - name: Cache composer packages
24       id: composer-cache
25       run: |
26         echo "::set-output name=dir::$(composer config cache-files-dir)"
27       uses: actions/cache@v1
28       with:
29         path: ${{ steps.composer-cache.outputs.dir }}
30         key: ${{ runner.os }}-composer-${{ matrix.php }}
31
32     - name: Setup Database
33       run: |
34         mysql -uroot -proot -e 'CREATE DATABASE IF NOT EXISTS `bookstack-test`;'
35         mysql -uroot -proot -e "CREATE USER 'bookstack-test'@'localhost' IDENTIFIED BY 'bookstack-test';"
36         mysql -uroot -proot -e "GRANT ALL ON \`bookstack-test\`.* TO 'bookstack-test'@'localhost';"
37         mysql -uroot -proot -e 'FLUSH PRIVILEGES;'
38
39     - name: Install composer dependencies & Test
40       run: composer install --prefer-dist --no-interaction --ansi
41
42     - name: Migrate and seed the database
43       run: |
44         php${{ matrix.php }} artisan migrate --force -n --database=mysql_testing
45         php${{ matrix.php }} artisan db:seed --force -n --class=DummyContentSeeder --database=mysql_testing
46
47     - name: phpunit
48       run: php${{ matrix.php }} ./vendor/bin/phpunit