diff options
Diffstat (limited to '.github/workflows/api-php-tests.yml')
-rw-r--r-- | .github/workflows/api-php-tests.yml | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/.github/workflows/api-php-tests.yml b/.github/workflows/api-php-tests.yml new file mode 100644 index 000000000..fa4d4a9dd --- /dev/null +++ b/.github/workflows/api-php-tests.yml @@ -0,0 +1,61 @@ +name: PHP Tests +on: + pull_request + +jobs: + php: + runs-on: ubuntu-latest + continue-on-error: ${{ matrix.experimental }} + name: "PHP: Nextcloud ${{ matrix.nextcloud }} - PHP ${{ matrix.php-versions }} - DB ${{ matrix.database }}" + strategy: + matrix: + php-versions: ['7.4'] + nextcloud: ['stable21'] + database: ['sqlite'] + experimental: [false] + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-versions }} + extensions: pdo_sqlite,pdo_mysql,pdo_pgsql,gd,zip + coverage: pcov + + ### Back to normal setup + - name: Set up server non MySQL + uses: SMillerDev/nextcloud-actions/setup-nextcloud@main + with: + cron: true + version: ${{ matrix.nextcloud }} + database-type: ${{ matrix.database }} + + - name: Prime app build + run: make + + - name: Configure server with app + uses: SMillerDev/nextcloud-actions/setup-nextcloud-app@main + with: + app: 'news' + check-code: true + + - name: Setup problem matchers for PHPUnit + run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" + + - name: Prep PHP tests + working-directory: ../server/apps/news + run: make php-test-dependencies + - name: PHPCS + working-directory: ../server/apps/news + run: make phpcs + - name: PHPStan + working-directory: ../server/apps/news + run: make phpstan + - name: Unittests + working-directory: ../server/apps/news + run: make unit-test + - name: Upload codecoverage + working-directory: ../server/apps/news + run: bash <(curl -s https://codecov.io/bash) -f build/php-unit.clover |