2024-09-21 14:06:11 +02:00
|
|
|
|
name: PHPUnit
|
|
|
|
|
|
2024-09-20 19:15:55 +02:00
|
|
|
|
on:
|
|
|
|
|
push:
|
2024-09-21 11:00:33 +02:00
|
|
|
|
branches:
|
|
|
|
|
- main
|
2024-09-24 16:24:31 +02:00
|
|
|
|
- improve_tests
|
2024-09-20 19:15:55 +02:00
|
|
|
|
pull_request:
|
2024-09-21 11:00:33 +02:00
|
|
|
|
|
|
|
|
|
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:
|
2024-09-21 11:00:33 +02:00
|
|
|
|
image: mariadb
|
2024-09-20 19:15:55 +02:00
|
|
|
|
env:
|
|
|
|
|
MYSQL_ROOT_PASSWORD: root
|
2024-09-21 11:00:33 +02:00
|
|
|
|
strategy:
|
|
|
|
|
matrix:
|
2024-10-31 16:40:26 +01:00
|
|
|
|
php-version: ['7.4', '8.0', '8.1', '8.2', '8.3']
|
2024-11-16 19:38:28 +01:00
|
|
|
|
wordpress-version: ['6.7']
|
2024-09-21 14:06:11 +02:00
|
|
|
|
name: PHPUnit – PHP ${{ matrix.php-version }}
|
2024-09-21 11:00:33 +02:00
|
|
|
|
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 14:06:11 +02:00
|
|
|
|
- name: Cache WordPress Setup
|
|
|
|
|
id: cache-wordpress
|
|
|
|
|
uses: https://code.forgejo.org/actions/cache@v4
|
|
|
|
|
with:
|
|
|
|
|
path: |
|
|
|
|
|
${{ env.WP_CORE_DIR }}
|
|
|
|
|
${{ env.WP_TESTS_DIR }}
|
2024-11-16 19:38:28 +01:00
|
|
|
|
key: cache-wordpress-67-2
|
2024-09-21 14:06:11 +02:00
|
|
|
|
|
|
|
|
|
- name: Cache Composer
|
|
|
|
|
id: cache-composer-phpunit
|
|
|
|
|
uses: https://code.forgejo.org/actions/cache@v4
|
|
|
|
|
with:
|
|
|
|
|
path: |
|
|
|
|
|
./vendor/
|
2024-10-31 16:40:26 +01:00
|
|
|
|
key: cache-composer-phpunit-2
|
2024-09-21 14:06:11 +02:00
|
|
|
|
|
2024-09-21 11:00:33 +02:00
|
|
|
|
- name: Setup PHP
|
|
|
|
|
uses: https://github.com/shivammathur/setup-php@v2
|
|
|
|
|
with:
|
2024-09-21 14:06:11 +02:00
|
|
|
|
php-version: ${{ matrix.php-version }}
|
2024-09-21 11:00:33 +02:00
|
|
|
|
coverage: none
|
2024-09-21 14:06:11 +02:00
|
|
|
|
tools: composer
|
2024-09-21 11:00:33 +02:00
|
|
|
|
env:
|
|
|
|
|
runner: self-hosted
|
2024-09-20 19:15:55 +02:00
|
|
|
|
|
2024-09-21 14:06:11 +02:00
|
|
|
|
- name: Install PHPUnit and PHPUnit-Polyfills
|
|
|
|
|
if: steps.cache-composer-phpunit.outputs.cache-hit != 'true'
|
|
|
|
|
run: composer require --dev yoast/phpunit-polyfills:"^3.0"
|
2024-09-20 19:15:55 +02:00
|
|
|
|
|
2024-09-21 14:06:11 +02:00
|
|
|
|
- name: Install and cache mysqladmin needed to initialize the test database
|
|
|
|
|
uses: https://github.com/awalsh128/cache-apt-pkgs-action@latest
|
|
|
|
|
with:
|
|
|
|
|
packages: mysql-client
|
|
|
|
|
version: 1.0
|
2024-09-20 19:15:55 +02:00
|
|
|
|
|
2024-09-21 11:00:33 +02:00
|
|
|
|
- name: Setup Test Environment
|
2024-09-21 14:06:11 +02:00
|
|
|
|
if: steps.cache-wordpress.outputs.cache-hit != 'true'
|
2024-11-16 19:38:28 +01:00
|
|
|
|
run: bash bin/install-wp-tests.sh wordpress_test root root 127.0.0.1 ${{ matrix.wordpress-version }} false false false false
|
2024-09-21 14:06:11 +02:00
|
|
|
|
|
|
|
|
|
- name: Initialize WordPress test database
|
|
|
|
|
if: steps.cache-wordpress.outputs.cache-hit != 'false'
|
2024-11-16 19:38:28 +01:00
|
|
|
|
run: bash bin/install-wp-tests.sh wordpress_test root root 127.0.0.1 ${{ matrix.wordpress-version }} false true true true
|
2024-09-21 11:00:33 +02:00
|
|
|
|
|
2024-09-25 11:27:17 +02:00
|
|
|
|
- name: Run Integration tests for The Events Calendar
|
2024-10-02 21:54:03 +02:00
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=the_events_calendar
|
2024-09-21 11:00:33 +02:00
|
|
|
|
env:
|
2024-09-21 14:06:11 +02:00
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|
2024-09-25 11:27:17 +02:00
|
|
|
|
|
|
|
|
|
- name: Run Integration tests for VS Event List
|
2024-10-02 21:54:03 +02:00
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=vs_event_list
|
2024-09-25 11:27:17 +02:00
|
|
|
|
env:
|
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|
|
|
|
|
|
|
|
|
|
- name: Run Integration tests for GatherPress
|
2024-10-02 21:54:03 +02:00
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=gatherpress
|
2024-09-25 11:27:17 +02:00
|
|
|
|
env:
|
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|
|
|
|
|
|
|
|
|
|
- name: Run Integration tests for Events Manager
|
2024-10-02 21:54:03 +02:00
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=events_manager
|
2024-10-10 15:31:24 +02:00
|
|
|
|
env:
|
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|
|
|
|
|
|
|
|
|
|
- name: Run Integration tests for WP Event Manager
|
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=wp_event_manager
|
2024-10-13 09:44:00 +02:00
|
|
|
|
env:
|
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|
|
|
|
|
|
|
|
|
|
- name: Run Integration tests for Eventin (WP Event Solution)
|
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=eventin
|
2024-10-18 13:54:53 +02:00
|
|
|
|
env:
|
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|
|
|
|
|
|
|
|
|
|
- name: Run Integration tests for Modern Events Calendar Lite
|
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=modern_events_calendar_lite
|
2024-11-25 19:06:11 +01:00
|
|
|
|
env:
|
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|
|
|
|
|
|
|
|
|
|
- name: Run Integration tests for EventPrime
|
|
|
|
|
run: cd /workspace/Event-Federation/wordpress-activitypub-event-bridge/ && ./vendor/bin/phpunit --filter=eventprime
|
2024-09-25 11:27:17 +02:00
|
|
|
|
env:
|
|
|
|
|
PHP_VERSION: ${{ matrix.php-version }}
|