name: Unit Testing on: push: branches: - main pull_request: jobs: phpunit: runs-on: ubuntu-latest services: mysql: image: 'mariadb:10.7' env: MYSQL_ROOT_PASSWORD: root ports: - 3306:3306 strategy: matrix: php-versions: ['8.1'] wp-version: [latest] name: Run phpunit tests env: extensions: mysql key: cache-v1 steps: - name: Checkout uses: https://code.forgejo.org/actions/checkout@v4 # - name: Setup cache environment # id: extensioncache # uses: https://github.com/shivammathur/cache-extensions@v1 # with: # php-version: ${{ matrix.php-versions }} # extensions: ${{ env.extensions }} # key: ${{ env.key }} # - name: Cache extensions # uses: https://code.forgejo.org/actions/cache@v4 # with: # path: ${{ steps.extensioncache.outputs.dir }} # key: ${{ steps.extensioncache.outputs.key }} # restore-keys: ${{ steps.extensioncache.outputs.key }} - name: Setup PHP uses: https://github.com/shivammathur/setup-php@v2 with: php-version: ${{ matrix.php-versions }} coverage: none tools: composer, phpunit-polyfills - name: Install Composer dependencies for PHP uses: "ramsey/composer-install@v1" - name: Install mysqladmin run: sudo apt update && sudo apt upgrade && sudo apt -y install mysql-client - name: Setup Test Environment run: bash bin/install-wp-tests.sh wordpress_test root root 127.0.0.1 ${{ matrix.wp-version }} - name: Unit Testing run: ./vendor/bin/phpunit env: PHP_VERSION: ${{ matrix.php-versions }}