diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 697910d..a9f738e 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -22,7 +22,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 # User PHP 7.4 here for compatibility with the WordPress codesniffer rules. - name: Setup PHP @@ -32,32 +32,41 @@ jobs: coverage: none tools: composer, cs2pr - - uses: technote-space/get-diff-action@v6 + - uses: technote-space/get-diff-action@v6 # repo is archived. with: SUFFIX_FILTER: .php - name: Get Composer cache directory id: composer-cache run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - if: "!! env.GIT_DIFF" - name: Cache Composer vendor directory - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ${{ steps.composer-cache.outputs.dir }} key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} restore-keys: | ${{ runner.os }}-composer- - if: "!! env.GIT_DIFF" - name: Validate composer.json and composer.lock run: composer validate - if: "!! env.GIT_DIFF" - name: Install dependencies run: composer install --no-progress --optimize-autoloader --prefer-dist - if: "!! env.GIT_DIFF" + + - name: Fix auto-fixable PHP Code Standards Violations + continue-on-error: true + run: vendor/bin/phpcbf --standard=phpcs.xml + + - name: Commit PHPCBF changes on main + if: ${{ github.ref == 'refs/heads/main' }} # only commit on main + uses: stefanzweifel/git-auto-commit-action@v5 + with: + commit_message: "🤖 PHPCBF" + commit_options: "" + env: + GITHUB_TOKEN: "${{ github.token }}" - name: Detecting PHP Code Standards Violations - run: vendor/bin/phpcs --standard=phpcs.xml -s ${{ env.GIT_DIFF }} + run: vendor/bin/phpcs --standard=phpcs.xml -s ${{ env.GIT_DIFF }} --report=checkstyle | cs2pr if: "!! env.GIT_DIFF" diff --git a/.github/workflows/codecoverage-main.yml b/.github/workflows/unit-tests-and-coverage-report.yml similarity index 68% rename from .github/workflows/codecoverage-main.yml rename to .github/workflows/unit-tests-and-coverage-report.yml index 49a12c0..ef254c0 100644 --- a/.github/workflows/codecoverage-main.yml +++ b/.github/workflows/unit-tests-and-coverage-report.yml @@ -1,4 +1,4 @@ -name: Codecoverage-Main +name: Unit tests + Code coverage report # Runs PHPUnit unit and Codeception wp-browser wpunit tests, merges the code coverage, commits the html report to # GitHub Pages, generates a README badge with the coverage percentage. @@ -7,6 +7,11 @@ on: push: branches: - main + pull_request: + types: [ opened, reopened, ready_for_review, synchronize ] + branches: + - main + workflow_dispatch: jobs: @@ -25,31 +30,36 @@ jobs: strategy: matrix: - php: [ '7.4' ] + php: [ '7.3', '7.4', '8.0', '8.1', '8.2', '8.3' ] steps: - name: Checkout uses: actions/checkout@v3 - - - name: Check does gh-pages branch need to be created - run: | - if [[ $(git branch -l gh-pages) == "" ]]; then - gh_pages_branch_needed=true - else - gh_pages_branch_needed=false - fi - echo "GH_PAGES_BRANCH_NEEDED=$gh_pages_branch_needed" >> $GITHUB_ENV; - mkdir gh-pages - - - name: Maybe create gh-pages branch - if: ${{ env.GH_PAGES_BRANCH_NEEDED }} - uses: peaceiris/actions-gh-pages@v4 with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./gh-pages - force_orphan: true - allow_empty_commit: true - commit_message: "🤖 Creating gh-pages branch" + fetch-depth: 0 # attempting to get all branch names. + +# - name: Check does gh-pages branch need to be created +# run: | +# git branch -l; +# if [[ $(git branch -l gh-pages) == "" ]]; then +# gh_pages_branch_needed=true; +# echo "gh-pages branch is needed"; +# else +# gh_pages_branch_needed=false +# echo "gh-pages branch already exists"; +# fi +# echo "GH_PAGES_BRANCH_NEEDED=$gh_pages_branch_needed" >> $GITHUB_ENV; +# mkdir gh-pages +# +# - name: Maybe create gh-pages branch +# if: ${{ env.GH_PAGES_BRANCH_NEEDED }} +# uses: peaceiris/actions-gh-pages@v4 +# with: +# github_token: ${{ secrets.GITHUB_TOKEN }} +# publish_dir: ./gh-pages +# force_orphan: true +# allow_empty_commit: true +# commit_message: "🤖 Creating gh-pages branch" - name: Checkout GitHub Pages branch for code coverage report uses: actions/checkout@v3 @@ -102,6 +112,7 @@ jobs: run: php-coverage-badger gh-pages/phpunit/clover.xml gh-pages/phpunit/coverage.svg - name: Commit code coverage to gh-pages + if: ${{ github.ref == 'refs/heads/main' && matrix.php-version == '7.3' }} # only commit on main, on the PHP version we're using in production. uses: stefanzweifel/git-auto-commit-action@v5 with: repository: gh-pages diff --git a/phpcs.xml b/phpcs.xml index e1bf8e0..1c6f8e2 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -3,4 +3,8 @@ + + + includes + upgrades diff --git a/tests/phpunit/includes/HiiveConnectionTest.php b/tests/phpunit/includes/HiiveConnectionTest.php index 4c0265f..d1bfaa5 100644 --- a/tests/phpunit/includes/HiiveConnectionTest.php +++ b/tests/phpunit/includes/HiiveConnectionTest.php @@ -179,7 +179,7 @@ function ( $request_response ) { * * @see https://github.com/10up/wp_mock/pull/246 */ - WP_Mock::userFunction( 'NewfoldLabs\WP\Module\Data\remove_filter' ) + WP_Mock::userFunction( 'remove_filter' ) ->once() ->with( 'http_headers_useragent', array( $sut, 'add_plugin_name_version_to_user_agent' ) ); @@ -343,7 +343,7 @@ function ( string $constant_name ) use ( $temp_dir ) { * * @see https://github.com/10up/wp_mock/pull/246 */ - WP_Mock::userFunction( 'NewfoldLabs\WP\Module\Data\remove_filter' ) + WP_Mock::userFunction( 'remove_filter' ) ->twice() ->with( 'http_headers_useragent', array( $sut, 'add_plugin_name_version_to_user_agent' ) );