Closes #7119 #1154
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Unit/Integration General tests Latest version with coverage | |
on: | |
pull_request: | |
branches: | |
- trunk | |
- develop | |
- branch-* | |
- feature/* | |
- enhancement/* | |
jobs: | |
run: | |
runs-on: ${{ matrix.operating-system }} | |
strategy: | |
fail-fast: false | |
matrix: | |
operating-system: [ubuntu-latest] | |
php-versions: ['8.3'] | |
wp-versions: ['latest'] | |
name: WP ${{ matrix.wp-versions }} with PHP ${{ matrix.php-versions }} on ${{ matrix.operating-system }}. | |
env: | |
WP_TESTS_DIR: "/tmp/tests/phpunit" | |
WP_CORE_DIR: "/tmp/wordpress-develop" | |
ROCKETCDN_EMAIL: ${{ secrets.ROCKETCDN_EMAIL }} | |
ROCKETCDN_PWD: ${{ secrets.ROCKETCDN_PWD }} | |
ROCKETCDN_TOKEN: ${{ secrets.ROCKETCDN_TOKEN }} | |
ROCKETCDN_URL: ${{ secrets.ROCKETCDN_URL }} | |
ROCKETCDN_WEBSITE_ID: ${{ secrets.ROCKETCDN_WEBSITE_ID }} | |
ROCKET_EMAIL: ${{ secrets.ROCKET_EMAIL }} | |
ROCKET_KEY: ${{ secrets.ROCKET_KEY }} | |
ROCKET_CLOUDFLARE_API_KEY: ${{ secrets.ROCKET_CLOUDFLARE_API_KEY }} | |
ROCKET_CLOUDFLARE_EMAIL: ${{ secrets.ROCKET_CLOUDFLARE_EMAIL }} | |
ROCKET_CLOUDFLARE_SITE_URL: ${{ secrets.ROCKET_CLOUDFLARE_SITE_URL }} | |
ROCKET_CLOUDFLARE_ZONE_ID: ${{ secrets.ROCKET_CLOUDFLARE_ZONE_ID }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php-versions }} | |
coverage: xdebug | |
tools: composer:v2, phpunit | |
- name: Start mysql service | |
run: sudo /etc/init.d/mysql start | |
- name: Setup problem matchers for PHP | |
run: echo "::add-matcher::${{ runner.tool_cache }}/php.json" | |
- name: Setup problem matchers for PHPUnit | |
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" | |
- name: Get composer cache directory | |
id: composercache | |
run: echo "::set-output name=dir::$(composer config cache-files-dir)" | |
- name: Cache dependencies | |
uses: actions/cache@v4 | |
with: | |
path: ${{ steps.composercache.outputs.dir }} | |
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }} | |
restore-keys: ${{ runner.os }}-composer- | |
- name: Require phpcov for coverage reporting | |
run: composer require --dev --no-scripts phpunit/phpcov -W | |
- name: Install dependencies | |
run: composer install --prefer-dist --no-interaction --no-scripts | |
- name: Install tests | |
run: bash bin/install-wp-tests.sh wordpress_test root root 127.0.0.1:3306 ${{ matrix.wp-versions }} | |
- name: Mysql8 auth plugin workaround | |
run: sudo mysql -u root -proot -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';" | |
- name: Test | |
run: composer run-tests-coverage | |
- name: Code Coverage Report | |
run: composer report-code-coverage | |
- name: Run codacy-coverage-reporter | |
uses: codacy/codacy-coverage-reporter-action@v1 | |
with: | |
project-token: ${{ secrets.CODACY_PROJECT_TOKEN }} | |
coverage-reports: tests/report/coverage.clover |