I'm already fed up with dealing with Travis so let's just move everything over to GHA. This will need to support unit tests and linting for multiple versions of PHP as well as unit tests and linting for JS.
The general process is something like:
install composer
require phpunit (v6 for PHP < 8, || v9) * this is currently a mess because PHP 8 is scheduled for release in a month and phpunit 6 does not support PHP 8, only phpunit 9 will support PHP 8. BUT... WP only works with phpunit 6 and currently doesn't support PHP 8, so we have no idea what is going to break when PHP 8 drops.
install the WP core testing site and unit tests via the tests/bin/install-wp-tests.sh script
then either run:
PHP linting via codesniffer (after install & config via composer)
PHP unit testing
JS linting & unit testing via npm script
finally, send notifications to the appropriate Slack channels
plz note that in the EE core master branch (as well as some add-ons) the JS tests are triggered conditionally via a commit comment, but would likely operate better on GHA using folder changes.
Currently received this notice from Travis CI:
I'm already fed up with dealing with Travis so let's just move everything over to GHA. This will need to support unit tests and linting for multiple versions of PHP as well as unit tests and linting for JS.
The general process is something like:
install composer
require phpunit (v6 for PHP < 8, || v9) * this is currently a mess because PHP 8 is scheduled for release in a month and phpunit 6 does not support PHP 8, only phpunit 9 will support PHP 8. BUT... WP only works with phpunit 6 and currently doesn't support PHP 8, so we have no idea what is going to break when PHP 8 drops.
install the WP core testing site and unit tests via the
tests/bin/install-wp-tests.sh
scriptthen either run:
PHP linting via codesniffer (after install & config via composer)
PHP unit testing
JS linting & unit testing via npm script
finally, send notifications to the appropriate Slack channels
plz note that in the EE core master branch (as well as some add-ons) the JS tests are triggered conditionally via a commit comment, but would likely operate better on GHA using folder changes.
Here's the Travis config for EE core master: https://github.com/eventespresso/event-espresso-core/blob/master/.travis.yml
which I have simplified a bit in the barista branch because we no longer require JS testing there: https://github.com/eventespresso/event-espresso-core/blob/barista/.travis.yml
I'm not concerned with how any of this is done, so any changes you wish to make to simplify and/or centralize any of this logic is fine with me.
you can use any branch on EE core and the REM repo for testing things