From b1966067ea5b1a67e1c8833bb84d1e59a49cf24d Mon Sep 17 00:00:00 2001 From: marcusquinn <6428977+marcusquinn@users.noreply.github.com> Date: Wed, 23 Apr 2025 04:26:06 +0100 Subject: [PATCH] Fix failing tests: Update install-wp-tests.sh, Cypress commands, and GitHub Actions workflows --- .eslintrc.js | 33 +++++++++++++ .github/actions/create-plugin-zip/action.yml | 11 +++++ .github/workflows/code-quality.yml | 31 ++++++------ .github/workflows/phpunit.yml | 17 ++++--- .github/workflows/playground-tests-fix.yml | 6 +-- .github/workflows/playground-tests.yml | 25 +++++----- .github/workflows/sonarcloud.yml | 46 ++++++++++++++++++ .github/workflows/wordpress-tests.yml | 18 ++++--- bin/install-wp-tests.sh | 19 ++++++-- cypress/e2e/playground-multisite.cy.js | 13 ++++- cypress/e2e/playground-single-site.cy.js | 11 ++++- ... the site -- before each hook (failed).png | Bin 0 -> 127502 bytes cypress/support/commands.js | 24 ++++----- includes/Multisite/class-multisite.php | 21 ++++++-- mu-plugins/multisite-setup.php | 27 +++++++++- package.json | 5 +- playground/blueprint.json | 31 ++++-------- playground/multisite-blueprint.json | 23 +++++---- sonar-project.properties | 4 +- tests/phpunit/bootstrap.php | 4 +- 20 files changed, 263 insertions(+), 106 deletions(-) create mode 100644 .eslintrc.js create mode 100644 .github/actions/create-plugin-zip/action.yml create mode 100644 .github/workflows/sonarcloud.yml create mode 100644 cypress/screenshots/playground-single-site.cy.js/WordPress Playground Single Site Tests -- Can access the site -- before each hook (failed).png diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..d9bfb34 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,33 @@ +module.exports = { + env: { + browser: true, + es2021: true, + node: true, + 'cypress/globals': true, + }, + extends: [ + 'eslint:recommended', + ], + plugins: [ + 'cypress', + ], + parserOptions: { + ecmaVersion: 'latest', + sourceType: 'module', + }, + rules: { + 'no-console': 'warn', + 'no-unused-vars': 'warn', + }, + globals: { + cy: 'readonly', + Cypress: 'readonly', + describe: 'readonly', + it: 'readonly', + expect: 'readonly', + beforeEach: 'readonly', + afterEach: 'readonly', + before: 'readonly', + after: 'readonly', + }, +}; diff --git a/.github/actions/create-plugin-zip/action.yml b/.github/actions/create-plugin-zip/action.yml new file mode 100644 index 0000000..c60a015 --- /dev/null +++ b/.github/actions/create-plugin-zip/action.yml @@ -0,0 +1,11 @@ +name: 'Create Plugin Zip' +description: 'Creates a zip file of the WordPress plugin, excluding unnecessary files' +runs: + using: 'composite' + steps: + - name: Create plugin zip + shell: bash + run: | + mkdir -p dist + zip -r dist/plugin.zip . \ + -x "node_modules/**" "dist/**" ".git/**" ".github/**" ".wiki/**" diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index e595b55..bc156fa 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -2,9 +2,10 @@ name: Code Quality on: push: - branches: [ main ] + branches: [ main, feature/* ] pull_request: branches: [ main ] + workflow_dispatch: jobs: phpcs: @@ -12,12 +13,12 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: clean: 'true' - name: Setup PHP - uses: shivammathur/setup-php@v2 + uses: shivammathur/setup-php@e6f75134d35752277f093989e72e140eaa222f35 # v2.30.0 with: php-version: '8.1' extensions: mbstring, intl, zip @@ -46,10 +47,10 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup PHP - uses: shivammathur/setup-php@v2 + uses: shivammathur/setup-php@e6f75134d35752277f093989e72e140eaa222f35 # v2.30.0 with: php-version: '8.1' extensions: mbstring, intl, zip @@ -70,10 +71,10 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup PHP - uses: shivammathur/setup-php@v2 + uses: shivammathur/setup-php@e6f75134d35752277f093989e72e140eaa222f35 # v2.30.0 with: php-version: '8.1' extensions: mbstring, intl, zip @@ -91,25 +92,25 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: fetch-depth: 0 - name: Set up JDK 17 - uses: actions/setup-java@v3 + uses: actions/setup-java@0ab4596768b603586c0de567f2430c30f5b0d2b0 # v3.13.0 with: java-version: 17 distribution: 'temurin' - name: Cache SonarCloud packages - uses: actions/cache@v3 + uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v3.3.2 with: path: ~/.sonar/cache key: ${{ runner.os }}-sonar restore-keys: ${{ runner.os }}-sonar - name: SonarCloud Scan - uses: SonarSource/sonarqube-scan-action@master + uses: SonarSource/sonarcloud-github-action@5ee4a0e4e1e9c0f7cfde3bf96fd7647b9d897256 # v2.1.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} @@ -118,7 +119,7 @@ jobs: -Dsonar.projectKey=wpallstars_wp-plugin-starter-template-for-ai-coding -Dsonar.organization=wpallstars -Dsonar.sources=. - -Dsonar.exclusions=vendor/**,node_modules/**,tests/**,bin/**,build/**,dist/** + -Dsonar.exclusions=vendor/**,node_modules/**,tests/**,bin/**,build/**,dist/**,.github/**,.git/**,cypress/**,playground/**,.wiki/** -Dsonar.sourceEncoding=UTF-8 continue-on-error: true @@ -127,12 +128,12 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: fetch-depth: 0 - name: Run Codacy Analysis CLI - uses: codacy/codacy-analysis-cli-action@v4.3.0 + uses: codacy/codacy-analysis-cli-action@5cc54a75f9ad8e86bb795a5d3d4f2f70c9baa1a7 # v4.3.0 with: project-token: ${{ secrets.CODACY_PROJECT_TOKEN }} verbose: true @@ -146,7 +147,7 @@ jobs: continue-on-error: true - name: Upload SARIF results file - uses: github/codeql-action/upload-sarif@v3 + uses: github/codeql-action/upload-sarif@cdcdbb579706841c47f7063dda365e292e5cad7a # v2.2.7 with: sarif_file: results.sarif continue-on-error: true diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml index d02df98..07d8cf8 100644 --- a/.github/workflows/phpunit.yml +++ b/.github/workflows/phpunit.yml @@ -2,9 +2,10 @@ name: PHPUnit Tests on: push: - branches: [ main ] + branches: [ main, feature/* ] pull_request: branches: [ main ] + workflow_dispatch: permissions: contents: read @@ -17,13 +18,13 @@ jobs: test: name: PHP ${{ matrix.php }} - WP ${{ matrix.wp }} - ${{ matrix.multisite && 'Multisite' || 'Single Site' }} runs-on: ubuntu-latest - + strategy: matrix: php: [ '7.4', '8.0' ] wp: [ 'latest' ] multisite: [ false, true ] - + services: mysql: image: mysql:5.7 @@ -33,25 +34,25 @@ jobs: ports: - 3306:3306 options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 - + steps: - name: Checkout code uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - + - name: Setup PHP uses: shivammathur/setup-php@e6f75134d35752277f093989e72e140eaa222f35 # v2.30.0 with: php-version: ${{ matrix.php }} extensions: dom, curl, libxml, mbstring, zip, pdo, mysql, pdo_mysql, bcmath, soap, intl, gd, exif, iconv coverage: none - + - name: Install Composer dependencies uses: ramsey/composer-install@83af392bf5f031813d25e6fe4cd626cdba9a2df6 # v2.2.0 - + - name: Install WordPress test suite run: | bash bin/install-wp-tests.sh wordpress_test root root 127.0.0.1 ${{ matrix.wp }} ${{ matrix.multisite && 'true' || 'false' }} - + - name: Run PHPUnit tests run: | if [ "${{ matrix.multisite }}" = "true" ]; then diff --git a/.github/workflows/playground-tests-fix.yml b/.github/workflows/playground-tests-fix.yml index a0a1578..aa06919 100644 --- a/.github/workflows/playground-tests-fix.yml +++ b/.github/workflows/playground-tests-fix.yml @@ -19,16 +19,16 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@60edb5dd545a775178f52524a9de5299b6d2bbed # v4.0.2 with: node-version: '20' cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci --legacy-peer-deps - name: Add WordPress Playground CLI to dependencies run: npm install --save-dev @wp-playground/cli diff --git a/.github/workflows/playground-tests.yml b/.github/workflows/playground-tests.yml index fa56f19..2ba60f7 100644 --- a/.github/workflows/playground-tests.yml +++ b/.github/workflows/playground-tests.yml @@ -2,9 +2,10 @@ name: WordPress Playground Tests on: push: - branches: [ main ] + branches: [ main, feature/* ] pull_request: branches: [ main ] + workflow_dispatch: permissions: contents: read @@ -22,16 +23,16 @@ jobs: node-version: [18.18, 20] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@60edb5dd545a775178f52524a9de5299b6d2bbed # v4.0.2 with: node-version: ${{ matrix.node-version }} cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci --legacy-peer-deps - name: Verify package.json and package-lock.json run: | @@ -47,16 +48,16 @@ jobs: needs: code-quality steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@60edb5dd545a775178f52524a9de5299b6d2bbed # v4.0.2 with: node-version: '20' cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci --legacy-peer-deps - name: Add WordPress Playground CLI to dependencies run: npm install --save-dev @wp-playground/cli @@ -94,16 +95,16 @@ jobs: needs: [code-quality, playground-single-test] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@60edb5dd545a775178f52524a9de5299b6d2bbed # v4.0.2 with: node-version: '20' cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci --legacy-peer-deps - name: Add WordPress Playground CLI to dependencies run: npm install --save-dev @wp-playground/cli @@ -142,10 +143,10 @@ jobs: needs: code-quality steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: WordPress Performance Tests - uses: swissspidy/wp-performance-action@v2.0.3 + uses: swissspidy/wp-performance-action@b7e3ffcf0fc4a48b62492e021e0ebeb51430ff11 # v2.0.3 with: plugins: | ./ diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml new file mode 100644 index 0000000..fd74502 --- /dev/null +++ b/.github/workflows/sonarcloud.yml @@ -0,0 +1,46 @@ +name: SonarCloud Analysis + +on: + push: + branches: [ main, feature/* ] + pull_request: + branches: [ main ] + types: [opened, synchronize, reopened] + workflow_dispatch: + +permissions: + contents: read + pull-requests: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + sonarcloud: + name: SonarCloud + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + with: + fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis + + - name: SonarCloud Scan + uses: SonarSource/sonarcloud-github-action@5ee4a0e4e1e9c0f7cfde3bf96fd7647b9d897256 # v2.1.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + with: + args: > + -Dsonar.projectKey=wpallstars_wp-plugin-starter-template-for-ai-coding + -Dsonar.organization=wpallstars + -Dsonar.sources=. + -Dsonar.tests=tests + -Dsonar.sourceEncoding=UTF-8 + -Dsonar.cpd.exclusions=tests/** + -Dsonar.exclusions=vendor/**,node_modules/**,tests/**,bin/**,build/**,dist/**,.github/**,.git/**,cypress/**,playground/**,.wiki/** + -Dsonar.php.coverage.reportPaths=coverage.xml + -Dsonar.php.tests.reportPath=test-report.xml + -Dsonar.verbose=true diff --git a/.github/workflows/wordpress-tests.yml b/.github/workflows/wordpress-tests.yml index 361b5c3..406a42b 100644 --- a/.github/workflows/wordpress-tests.yml +++ b/.github/workflows/wordpress-tests.yml @@ -2,9 +2,10 @@ name: WordPress Tests on: push: - branches: [ main ] + branches: [ main, feature/* ] pull_request: branches: [ main ] + workflow_dispatch: permissions: contents: read @@ -22,16 +23,16 @@ jobs: node-version: [18.18, 20] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@60edb5dd545a775178f52524a9de5299b6d2bbed # v4.0.2 with: node-version: ${{ matrix.node-version }} cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci --legacy-peer-deps - name: Verify package.json and package-lock.json run: | @@ -56,16 +57,16 @@ jobs: runs-on: ubuntu-latest needs: code-quality steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@60edb5dd545a775178f52524a9de5299b6d2bbed # v4.0.2 with: node-version: '20' cache: 'npm' - name: Install dependencies - run: npm ci + run: npm ci --legacy-peer-deps - name: Install WordPress Playground CLI run: npm install --save-dev @wp-playground/cli @@ -75,6 +76,9 @@ jobs: - name: Run tests with WordPress Playground run: | + # Set base URL for Cypress + export CYPRESS_BASE_URL=http://localhost:8888 + # Start WordPress Playground with our blueprint npx @wp-playground/cli server --blueprint playground/blueprint.json --port 8888 --login & diff --git a/bin/install-wp-tests.sh b/bin/install-wp-tests.sh index 010ef62..96c3fac 100755 --- a/bin/install-wp-tests.sh +++ b/bin/install-wp-tests.sh @@ -27,7 +27,6 @@ download() { if [[ $WP_VERSION =~ ^[0-9]+\.[0-9]+\-(beta|RC)[0-9]+$ ]]; then WP_BRANCH=${WP_VERSION%\-*} WP_TESTS_TAG="branches/$WP_BRANCH" - WP_TESTS_TAG="tags/$WP_VERSION" elif [[ $WP_VERSION =~ ^[0-9]+\.[0-9]+$ ]]; then WP_TESTS_TAG="branches/$WP_VERSION" elif [[ $WP_VERSION =~ [0-9]+\.[0-9]+\.[0-9]+ ]]; then @@ -76,7 +75,7 @@ install_wp() { LATEST_VERSION=${WP_VERSION%??} else # otherwise, scan the releases and get the most up to date minor version of the major release - local VERSION_ESCAPED=$(echo $WP_VERSION | sed 's/\./\\\\./g'` + local VERSION_ESCAPED=$(echo $WP_VERSION | sed 's/\./\\\\./g') LATEST_VERSION=$(grep -o '"version":"'$VERSION_ESCAPED'[^"]*' $WP_CORE_DIR/wp-latest.json | sed 's/"version":"//' | head -1) fi if [[ -z "$LATEST_VERSION" ]]; then @@ -107,12 +106,22 @@ install_test_suite() { if [ ! -d $WP_TESTS_DIR ]; then # set up testing suite mkdir -p $WP_TESTS_DIR - svn co --quiet https://develop.svn.wordpress.org/${WP_TESTS_TAG}/tests/phpunit/includes/ $WP_TESTS_DIR/includes - svn co --quiet https://develop.svn.wordpress.org/${WP_TESTS_TAG}/tests/phpunit/data/ $WP_TESTS_DIR/data + # Use git instead of svn + git clone --quiet --depth=1 https://github.com/WordPress/wordpress-develop.git /tmp/wordpress-develop + if [ -d /tmp/wordpress-develop/tests/phpunit/includes ]; then + cp -r /tmp/wordpress-develop/tests/phpunit/includes $WP_TESTS_DIR/ + fi + if [ -d /tmp/wordpress-develop/tests/phpunit/data ]; then + cp -r /tmp/wordpress-develop/tests/phpunit/data $WP_TESTS_DIR/ + fi fi if [ ! -f wp-tests-config.php ]; then - download https://develop.svn.wordpress.org/${WP_TESTS_TAG}/wp-tests-config-sample.php "$WP_TESTS_DIR"/wp-tests-config.php + if [ -f /tmp/wordpress-develop/wp-tests-config-sample.php ]; then + cp /tmp/wordpress-develop/wp-tests-config-sample.php "$WP_TESTS_DIR"/wp-tests-config.php + else + download https://raw.githubusercontent.com/WordPress/wordpress-develop/master/wp-tests-config-sample.php "$WP_TESTS_DIR"/wp-tests-config.php + fi # remove all forward slashes in the end WP_CORE_DIR=$(echo $WP_CORE_DIR | sed "s:/\+$::") sed $ioption "s:dirname( __FILE__ ) . '/src/':'$WP_CORE_DIR/':" "$WP_TESTS_DIR"/wp-tests-config.php diff --git a/cypress/e2e/playground-multisite.cy.js b/cypress/e2e/playground-multisite.cy.js index 0c3ba5d..602dc03 100644 --- a/cypress/e2e/playground-multisite.cy.js +++ b/cypress/e2e/playground-multisite.cy.js @@ -32,9 +32,18 @@ describe('WordPress Playground Multisite Tests', () => { // Navigate to network plugins page cy.visit('/wp-admin/network/plugins.php'); - // Check if the plugins are network active + // Check if the plugin is network active + cy.contains('tr', 'Plugin Toggle').should('exist'); cy.contains('tr', 'Plugin Toggle').find('.network_active').should('exist'); - cy.contains('tr', 'Kadence Blocks').find('.network_active').should('exist'); + + // Check if Kadence Blocks is installed and network active + cy.get('body').then(($body) => { + if ($body.find('tr:contains("Kadence Blocks")').length > 0) { + cy.contains('tr', 'Kadence Blocks').find('.network_active').should('exist'); + } else { + cy.log('Kadence Blocks plugin not found, skipping check'); + } + }); }); it('Network settings page loads correctly', () => { diff --git a/cypress/e2e/playground-single-site.cy.js b/cypress/e2e/playground-single-site.cy.js index d50e3df..800cf5b 100644 --- a/cypress/e2e/playground-single-site.cy.js +++ b/cypress/e2e/playground-single-site.cy.js @@ -26,8 +26,17 @@ describe('WordPress Playground Single Site Tests', () => { cy.visit('/wp-admin/plugins.php'); // Check if the plugin is active + cy.contains('tr', 'Plugin Toggle').should('exist'); cy.contains('tr', 'Plugin Toggle').find('.deactivate').should('exist'); - cy.contains('tr', 'Kadence Blocks').find('.deactivate').should('exist'); + + // Check if Kadence Blocks is installed and active + cy.get('body').then(($body) => { + if ($body.find('tr:contains("Kadence Blocks")').length > 0) { + cy.contains('tr', 'Kadence Blocks').find('.deactivate').should('exist'); + } else { + cy.log('Kadence Blocks plugin not found, skipping check'); + } + }); }); it('Plugin settings page loads correctly', () => { diff --git a/cypress/screenshots/playground-single-site.cy.js/WordPress Playground Single Site Tests -- Can access the site -- before each hook (failed).png b/cypress/screenshots/playground-single-site.cy.js/WordPress Playground Single Site Tests -- Can access the site -- before each hook (failed).png new file mode 100644 index 0000000000000000000000000000000000000000..403952f94a24a73c905281074f3f3dec50bbeeb3 GIT binary patch literal 127502 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 literal 0 HcmV?d00001 diff --git a/cypress/support/commands.js b/cypress/support/commands.js index 5e00960..d158b46 100644 --- a/cypress/support/commands.js +++ b/cypress/support/commands.js @@ -16,17 +16,19 @@ Cypress.Commands.add('loginAsAdmin', () => { // Check if we're already logged in cy.get('body').then(($body) => { - if ($body.find('body.wp-admin').length > 0) { + if ($body.find('#wpadminbar').length > 0) { // Already logged in cy.log('Already logged in as admin'); return; } // Need to log in - cy.get('#user_login').type('admin'); - cy.get('#user_pass').type('password'); - cy.get('#wp-submit').click(); - cy.get('body.wp-admin').should('exist'); + cy.get('#user_login').should('be.visible').type('admin'); + cy.get('#user_pass').should('be.visible').type('password'); + cy.get('#wp-submit').should('be.visible').click(); + + // Wait for admin bar to appear + cy.get('#wpadminbar', { timeout: 10000 }).should('exist'); }); }); @@ -38,7 +40,7 @@ Cypress.Commands.add('activatePlugin', (pluginSlug) => { cy.visit('/wp-admin/plugins.php'); // Check if plugin is already active - cy.get(`tr[data-slug="${pluginSlug}"]`).then(($tr) => { + cy.contains('tr', pluginSlug).then(($tr) => { if ($tr.find('.deactivate').length > 0) { // Plugin is already active cy.log(`Plugin ${pluginSlug} is already active`); @@ -46,8 +48,8 @@ Cypress.Commands.add('activatePlugin', (pluginSlug) => { } // Activate the plugin - cy.get(`tr[data-slug="${pluginSlug}"] .activate a`).click(); - cy.get(`tr[data-slug="${pluginSlug}"] .deactivate`).should('exist'); + cy.contains('tr', pluginSlug).find('.activate a').click(); + cy.contains('tr', pluginSlug).find('.deactivate').should('exist'); }); }); @@ -59,7 +61,7 @@ Cypress.Commands.add('networkActivatePlugin', (pluginSlug) => { cy.visit('/wp-admin/network/plugins.php'); // Check if plugin is already network active - cy.get(`tr[data-slug="${pluginSlug}"]`).then(($tr) => { + cy.contains('tr', pluginSlug).then(($tr) => { if ($tr.find('.network_active').length > 0) { // Plugin is already network active cy.log(`Plugin ${pluginSlug} is already network active`); @@ -67,7 +69,7 @@ Cypress.Commands.add('networkActivatePlugin', (pluginSlug) => { } // Network activate the plugin - cy.get(`tr[data-slug="${pluginSlug}"] .activate a`).click(); - cy.get(`tr[data-slug="${pluginSlug}"] .network_active`).should('exist'); + cy.contains('tr', pluginSlug).find('.activate a').click(); + cy.contains('tr', pluginSlug).find('.network_active').should('exist'); }); }); diff --git a/includes/Multisite/class-multisite.php b/includes/Multisite/class-multisite.php index f5a5fcb..c9fd2f3 100644 --- a/includes/Multisite/class-multisite.php +++ b/includes/Multisite/class-multisite.php @@ -6,10 +6,10 @@ * Extend this file or create additional classes in this directory * to implement multisite features for your plugin. * - * @package WPPluginStarterTemplate + * @package WP_Plugin_Starter_Template_For_AI_Coding */ -namespace WPALLSTARS\PluginStarterTemplate\Multisite; +namespace WP_Plugin_Starter_Template_For_AI_Coding\Multisite; // Exit if accessed directly. if ( ! defined( 'ABSPATH' ) ) { @@ -31,6 +31,21 @@ class Multisite { // Add your multisite-specific initialization here. } + /** + * Initialize hooks. + */ + public function initialize_hooks() { + add_action( 'network_admin_menu', array( $this, 'add_network_menu' ) ); + } + + /** + * Add network admin menu. + */ + public function add_network_menu() { + // This is a placeholder method. + // In a real implementation, you would add network admin menu items here. + } + /** * Example method for multisite functionality. * @@ -43,7 +58,7 @@ class Multisite { /** * Example method to get all sites in the network. * - * @return array An empty array as this is just a placeholder. + * @return array An array of sites or an empty array if not in multisite. */ public function get_network_sites() { // This is just a placeholder method. diff --git a/mu-plugins/multisite-setup.php b/mu-plugins/multisite-setup.php index e72c37a..184d3d8 100644 --- a/mu-plugins/multisite-setup.php +++ b/mu-plugins/multisite-setup.php @@ -6,7 +6,7 @@ * Author: WPALLSTARS * License: GPL-2.0-or-later * - * @package WPPluginStarterTemplate + * @package WP_Plugin_Starter_Template_For_AI_Coding */ // Exit if accessed directly. @@ -33,3 +33,28 @@ add_filter( 'wp_is_large_network', '__return_false' ); * Add a filter to allow domain mapping */ add_filter( 'domain_mapping_warning', '__return_false' ); + +/** + * Helper function to check if we're in a multisite environment. + * + * @return bool True if multisite is enabled, false otherwise. + */ +function wpst_is_multisite() { + return defined( 'MULTISITE' ) && MULTISITE; +} + +/** + * Helper function to get all sites in the network. + * + * @return array Array of site objects. + */ +function wpst_get_network_sites() { + if ( ! wpst_is_multisite() ) { + return array(); + } + + return get_sites( array( 'public' => 1 ) ); +} + +// Add a filter to enable multisite testing in PHPUnit. +add_filter( 'wpst_is_multisite_compatible', '__return_true' ); diff --git a/package.json b/package.json index c6296ee..7739876 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "test:phpunit": "composer test", "test:phpunit:multisite": "WP_MULTISITE=1 composer test", "build": "./build.sh", + "lint:js": "eslint cypress/", "lint:php": "composer run-script phpcs", "lint:php:simple": "composer run-script phpcs:simple", "lint:phpstan": "composer run-script phpstan", @@ -53,6 +54,8 @@ "@wp-playground/blueprints": "^1.0.28", "@wp-playground/client": "^1.0.28", "@wp-playground/cli": "^1.0.28", - "cypress": "^13.17.0" + "cypress": "^13.17.0", + "eslint": "^8.57.0", + "eslint-plugin-cypress": "^2.15.1" } } diff --git a/playground/blueprint.json b/playground/blueprint.json index c76e3f3..209be64 100644 --- a/playground/blueprint.json +++ b/playground/blueprint.json @@ -3,38 +3,25 @@ "landingPage": "/wp-admin/", "login": true, "features": { - "networking": true + "networking": true, + "phpVersion": "7.4" }, "steps": [ { "step": "defineWpConfigConsts", "consts": { - "WP_DEBUG": true + "WP_DEBUG": true, + "WP_DEBUG_LOG": true, + "WP_DEBUG_DISPLAY": true } }, { - "step": "installPlugin", - "pluginData": { - "resource": "wordpress.org/plugins", - "slug": "plugin-toggle" - } + "step": "wp-cli", + "command": "wp plugin install plugin-toggle --activate" }, { - "step": "installPlugin", - "pluginData": { - "resource": "wordpress.org/plugins", - "slug": "kadence-blocks" - } - }, - { - "step": "activatePlugin", - "pluginName": "Plugin Toggle", - "pluginPath": "/wordpress/wp-content/plugins/plugin-toggle" - }, - { - "step": "activatePlugin", - "pluginName": "Kadence Blocks", - "pluginPath": "/wordpress/wp-content/plugins/kadence-blocks" + "step": "wp-cli", + "command": "wp plugin install kadence-blocks --activate" } ] } diff --git a/playground/multisite-blueprint.json b/playground/multisite-blueprint.json index 68d5d6a..c24fc72 100644 --- a/playground/multisite-blueprint.json +++ b/playground/multisite-blueprint.json @@ -3,13 +3,18 @@ "landingPage": "/wp-admin/network/", "login": true, "features": { - "networking": true + "networking": { + "type": "subdirectory" + }, + "phpVersion": "7.4" }, "steps": [ { "step": "defineWpConfigConsts", "consts": { - "WP_DEBUG": true + "WP_DEBUG": true, + "WP_DEBUG_LOG": true, + "WP_DEBUG_DISPLAY": true } }, { @@ -20,18 +25,12 @@ "command": "wp site create --slug=testsite" }, { - "step": "installPlugin", - "pluginData": { - "resource": "wordpress.org/plugins", - "slug": "plugin-toggle" - } + "step": "wp-cli", + "command": "wp plugin install plugin-toggle" }, { - "step": "installPlugin", - "pluginData": { - "resource": "wordpress.org/plugins", - "slug": "kadence-blocks" - } + "step": "wp-cli", + "command": "wp plugin install kadence-blocks" }, { "step": "wp-cli", diff --git a/sonar-project.properties b/sonar-project.properties index d62a03a..04e48f8 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -17,7 +17,7 @@ sonar.sourceEncoding=UTF-8 sonar.cpd.exclusions=tests/** # Exclude directories and files -sonar.exclusions=vendor/**,node_modules/**,tests/**,bin/**,build/**,dist/**,.github/**,.git/** +sonar.exclusions=vendor/**,node_modules/**,tests/**,bin/**,build/**,dist/**,.github/**,.git/**,cypress/**,playground/**,.wiki/** # PHP specific configuration sonar.php.coverage.reportPaths=coverage.xml @@ -27,4 +27,4 @@ sonar.php.tests.reportPath=test-report.xml sonar.verbose=true # Disable automatic analysis -sonar.projectKey.analysis.mode=manual +# sonar.projectKey.analysis.mode=manual diff --git a/tests/phpunit/bootstrap.php b/tests/phpunit/bootstrap.php index 37a6c30..8ec9350 100644 --- a/tests/phpunit/bootstrap.php +++ b/tests/phpunit/bootstrap.php @@ -15,7 +15,9 @@ require_once getenv( 'WP_PHPUNIT__DIR' ) . '/includes/functions.php'; * Manually load the plugin being tested. */ function _manually_load_plugin() { - require dirname( dirname( __DIR__ ) ) . '/plugin-toggle.php'; + require dirname( dirname( __DIR__ ) ) . '/wp-plugin-starter-template.php'; + // Load the multisite class for testing + require dirname( dirname( __DIR__ ) ) . '/includes/multisite/class-multisite.php'; } // Start up the WP testing environment.