Skip to content

Commit

Permalink
Merge branch 'main' into add/context-module
Browse files Browse the repository at this point in the history
* main:
  Ensure that the URL has a trailing slash. This ensures that the PHP_URL_PATH is always set, which prevents the str_replace() call from outputting "Deprecated: str_replace(): Passing null to parameter #1 ($search) of type array|string is deprecated"
  add brand plugin test workflow
  add brand plugin test workflow
  fix autofixable lint issues in test file
  add .nvmrc as v16
  • Loading branch information
circlecube committed Feb 23, 2024
2 parents 44916e4 + c5da2a9 commit f35f460
Show file tree
Hide file tree
Showing 4 changed files with 121 additions and 48 deletions.
74 changes: 74 additions & 0 deletions .github/workflows/brand-plugin-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Build and Test Module Updates in Brand Plugins
on:
pull_request:
types: [ opened, reopened, ready_for_review, synchronize ]
branches:
- main
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true

jobs:
setup:
name: Setup
runs-on: ubuntu-latest
outputs:
branch: ${{ steps.extract_branch.outputs.branch }}
steps:

- name: Extract branch name
shell: bash
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
id: extract_branch

bluehost:
name: Bluehost Build and Test
needs: setup
uses: newfold-labs/workflows/.github/workflows/module-plugin-test.yml@main
with:
module-repo: ${{ github.repository }}
module-branch: ${{ needs.setup.outputs.branch }}
plugin-repo: 'bluehost/bluehost-wordpress-plugin'
secrets: inherit

hostgator:
name: HostGator Build and Test
needs: setup
uses: newfold-labs/workflows/.github/workflows/module-plugin-test.yml@main
with:
module-repo: ${{ github.repository }}
module-branch: ${{ needs.setup.outputs.branch }}
plugin-repo: 'newfold-labs/wp-plugin-hostgator'
secrets: inherit

web:
name: Web.com Build and Test
needs: setup
uses: newfold-labs/workflows/.github/workflows/module-plugin-test.yml@main
with:
module-repo: ${{ github.repository }}
module-branch: ${{ needs.setup.outputs.branch }}
plugin-repo: 'newfold-labs/wp-plugin-web'
secrets: inherit

crazydomains:
name: Crazy Domains Build and Test
needs: setup
uses: newfold-labs/workflows/.github/workflows/module-plugin-test.yml@main
with:
module-repo: ${{ github.repository }}
module-branch: ${{ needs.setup.outputs.branch }}
plugin-repo: 'newfold-labs/wp-plugin-crazy-domains'
secrets: inherit

mojo:
name: Mojo Build and Test
needs: setup
uses: newfold-labs/workflows/.github/workflows/module-plugin-test.yml@main
with:
module-repo: ${{ github.repository }}
module-branch: ${{ needs.setup.outputs.branch }}
plugin-repo: 'newfold-labs/wp-plugin-mojo'
secrets: inherit
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
v16
4 changes: 2 additions & 2 deletions includes/CacheTypes/File.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
use NewfoldLabs\WP\Module\Performance\Performance;
use NewfoldLabs\WP\ModuleLoader\Container;
use WP_Forge\WP_Htaccess_Manager\htaccess;

use wpscholar\Url;

use function NewfoldLabs\WP\Module\Performance\getCacheLevel;
use function NewfoldLabs\WP\Module\Performance\removeDirectory;
use function NewfoldLabs\WP\Module\Performance\shouldCachePages;
Expand Down Expand Up @@ -299,7 +299,7 @@ protected function getStoragePathForRequest() {

if ( ! isset( $path ) ) {
$url = new Url();
$basePath = wp_parse_url( home_url(), PHP_URL_PATH );
$basePath = wp_parse_url( home_url('/'), PHP_URL_PATH );
$path = trailingslashit( self::CACHE_DIR . str_replace( $basePath, '', esc_url( $url->path ) ) );
}

Expand Down
90 changes: 44 additions & 46 deletions tests/cypress/integration/performance.cy.js
Original file line number Diff line number Diff line change
@@ -1,61 +1,59 @@
// <reference types="Cypress" />

describe('Performance Page', function () {
let appClass = '.' + Cypress.env('appId');

before(() => {
cy.visit('/wp-admin/admin.php?page=' + Cypress.env('pluginId') + '#/performance');
describe( 'Performance Page', function () {
const appClass = '.' + Cypress.env( 'appId' );

before( () => {
cy.visit(
'/wp-admin/admin.php?page=' +
Cypress.env( 'pluginId' ) +
'#/performance'
);
cy.injectAxe();

});
} );

it('Is Accessible', () => {
cy.wait(500);
cy.checkA11y( appClass + '-app-body');
});
it( 'Is Accessible', () => {
cy.wait( 500 );
cy.checkA11y( appClass + '-app-body' );
} );

it('Has Cache Settings', () => {
cy.get('.newfold-cache-settings')
it( 'Has Cache Settings', () => {
cy.get( '.newfold-cache-settings' )
.scrollIntoView()
.should('be.visible');
});
.should( 'be.visible' );
} );

it('Has Clear Cache Settings', () => {
cy.get('.newfold-clear-cache')
it( 'Has Clear Cache Settings', () => {
cy.get( '.newfold-clear-cache' )
.scrollIntoView()
.should('be.visible');
});

it('Clear Cache Disabled when Cache is Disabled', () => {
.should( 'be.visible' );
} );

cy.get('input[type="radio"]#cache-level-0').check();
it( 'Clear Cache Disabled when Cache is Disabled', () => {
cy.get( 'input[type="radio"]#cache-level-0' ).check();

cy.wait(500);
cy.wait( 500 );

cy.get('.clear-cache-button')
cy.get( '.clear-cache-button' )
.scrollIntoView()
.should('have.attr', 'disabled');
.should( 'have.attr', 'disabled' );

cy.get('input[type="radio"]#cache-level-1').check();
cy.get( 'input[type="radio"]#cache-level-1' ).check();

cy.get('.clear-cache-button')
cy.get( '.clear-cache-button' )
.scrollIntoView()
.should('not.have.attr', 'disabled');

cy.get('.nfd-notifications')
.contains('p', 'Cache')
.should('be.visible');
});

it('Clear Cache Button Functions', () => {

cy.get('.clear-cache-button').click();


cy.get('.nfd-notifications')
.contains('p', 'Cache cleared')
.should('be.visible');

});

});
.should( 'not.have.attr', 'disabled' );

cy.get( '.nfd-notifications' )
.contains( 'p', 'Cache' )
.should( 'be.visible' );
} );

it( 'Clear Cache Button Functions', () => {
cy.get( '.clear-cache-button' ).click();

cy.get( '.nfd-notifications' )
.contains( 'p', 'Cache cleared' )
.should( 'be.visible' );
} );
} );

0 comments on commit f35f460

Please sign in to comment.