wordpress-activitypub-event.../.forgejo/workflows/phpunit.yml

63 lines
1.6 KiB
YAML
Raw Normal View History

2024-09-20 19:15:55 +02:00
name: Unit Testing
on:
push:
branches:
- main
2024-09-20 19:15:55 +02:00
pull_request:
env:
WP_TESTS_DIR: /workspace/wordpress-test-lib
WP_CORE_DIR: /workspace/wordpress
2024-09-20 19:15:55 +02:00
jobs:
phpunit:
runs-on: ubuntu-latest
services:
mysql:
image: mariadb
2024-09-20 19:15:55 +02:00
env:
MYSQL_ROOT_PASSWORD: root
strategy:
matrix:
php-versions: ['8.1']
name: Run phpunit tests
env:
extensions: mysql
key: cache-v1
2024-09-20 19:15:55 +02:00
steps:
- name: Checkout
uses: https://code.forgejo.org/actions/checkout@v4
2024-09-21 12:03:56 +02:00
- name: Cache WordPress Setup
id: cache-wordpress
2024-09-21 12:13:22 +02:00
uses: https://code.forgejo.org/actions/cache@v4
2024-09-21 12:03:56 +02:00
with:
path: |
2024-09-21 12:38:14 +02:00
${{ env.WP_CORE_DIR }}
${{ env.WP_TESTS_DIR }}
2024-09-21 12:30:23 +02:00
key: cache-wordpress-1
2024-09-21 12:03:56 +02:00
- name: Setup PHP
uses: https://github.com/shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
coverage: none
tools: composer, phpunit-polyfills
env:
runner: self-hosted
2024-09-20 19:15:55 +02:00
- name: Install Composer dependencies for PHP
uses: ramsey/composer-install@v3
2024-09-20 19:15:55 +02:00
- name: Install mysqladmin
run: sudo apt update && sudo apt -y upgrade && sudo apt -y install mysql-client
2024-09-20 19:15:55 +02:00
- name: Setup Test Environment
2024-09-21 12:10:31 +02:00
if: steps.cache-wordpress.outputs.cache-hit != 'true'
run: bash bin/install-wp-tests.sh wordpress_test root root 127.0.0.1 6.6
- name: Unit Testing
run: cd /workspace/Event-Federation/wordpress-activitypub-event-extensions/ && phpunit
env:
PHP_VERSION: ${{ matrix.php-versions }}