Skip to content

Commit

Permalink
Merge pull request #18 from newfold-labs/add/module-plugin-test-workflow
Browse files Browse the repository at this point in the history
Add/module plugin test workflow
  • Loading branch information
wpscholar authored Dec 15, 2023
2 parents f49f76c + 83596ee commit 3599649
Show file tree
Hide file tree
Showing 3 changed files with 119 additions and 46 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
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 3599649

Please sign in to comment.