Skip to content

Commit

Permalink
fix plugin tests
Browse files Browse the repository at this point in the history
  • Loading branch information
kaitlinnewson committed Jan 30, 2025
2 parents d801e85 + 2505851 commit 7518cdb
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 34 deletions.
6 changes: 2 additions & 4 deletions .github/actions/tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,5 @@

set -e

npx cypress run --spec "cypress/tests/data/10-ApplicationSetup/*.cy.js,cypress/tests/data/60-content/VkarbasizaedSubmission.cy.js"

npx cypress run --config specPattern=plugins/themes/pragma/cypress/tests/functional

echo "Run cypress tests"
npx cypress run --config '{"specPattern":["plugins/themes/pragma/cypress/tests/functional/*.cy.js"]}'
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ jobs:
branch: main
repository: pkp
plugin: true

dataset_inject: true
51 changes: 22 additions & 29 deletions cypress/tests/functional/Pragma.cy.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
describe('Theme plugin tests', function() {
const journalPath = 'publicknowledge';
const index = 'index.php';
const path = '/' + index + '/' + journalPath;
const path = '/' + index + '/' + journalPath + '/en';

const date = new Date();
const day = date.getDate() + '';
Expand All @@ -37,30 +37,32 @@ describe('Theme plugin tests', function() {
it('Enables and selects the theme', function() {
cy.login('admin', 'admin', 'publicknowledge');

cy.get('.app__nav a').contains('Website').click();
cy.get('nav').contains('Settings').click();
// Ensure submenu item click despite animation
cy.get('nav').contains('Website').click({ force: true });
cy.get('button[id="plugins-button"]').click();

// Find and enable the plugin
cy.get('input[id^="select-cell-pragmathemeplugin-enabled"]').click();
cy.get('div:contains(\'The plugin "Pragma Theme" has been enabled.\')');
cy.reload();

// Select the Classic theme
// Select the Pragma theme
cy.get('button[id="appearance-button"]').click();
cy.get('select[id="theme-themePluginPath-control"]').select('pragma');
cy.get('#theme button').contains('Save').click();
cy.get('#theme [role="status"]').contains('Saved');
});

it('Visits front-end theme pages', function() {
cy.visit(' ');
cy.visit(path);
cy.visit(path + '/issue/current');
cy.visit(path + '/issue/archive');
cy.visit(path + '/issue/view/1');
cy.visit(path + '/article/view/1');
cy.visit(path + '/article/view/1/1');
cy.visit(path + '/about');
cy.visit(path + '/about/editorialTeam');
cy.visit(path + '/about/editorialMasthead');
cy.visit(path + '/about/submissions');
cy.visit(path + '/about/contact');
cy.visit(path + '/about/privacy');
Expand All @@ -79,7 +81,7 @@ describe('Theme plugin tests', function() {
cy.get('#theme [role="status"]').contains('Saved');

// Populate journal summary
cy.get('.app__navItem').contains('Journal').click();
cy.get('nav').contains('Journal').click();
cy.get('#masthead-button').click();
cy.setTinyMceContent('masthead-description-control-en', journalDescription);
cy.get('#masthead button').contains('Save').click();
Expand All @@ -106,31 +108,22 @@ describe('Theme plugin tests', function() {
cy.get('button').contains('OK').click();
});
cy.waitJQuery();
cy.get('nav a').contains('Submissions').click();
cy.get('button').contains('Archived').click();
cy.get('.listPanel__item').first().within(() => {
cy.get('.listPanel__item--submission__id').contains('1');
cy.get('a span').contains('View').click();
});
cy.visit('/index.php/publicknowledge/workflow/access/1');
cy.waitJQuery();
cy.get('button').contains('Publication').click();
cy.get('.pkpButton').contains('Create New Version').click();
cy.get('#modals-container .pkpButton').contains('Yes').click();
cy.wait(2000); // wait for a new version init

cy.get('#issue-button').click();
cy.get(`[data-cy="active-modal"] nav a:contains('Issue')`).click();
cy.get('.pkpFormField--options__optionLabel').contains('First category').click();
cy.get('#issue button').contains('Save').click();
cy.get('#issue [role="status"]').contains('Saved');
cy.get('button').contains('Save').click();
cy.get('[role="status"]').contains('Saved');

cy.get('#titleAbstract-button').click();
cy.get(`[data-cy="active-modal"] nav a:contains('Title & Abstract')`).click();
cy.getTinyMceContent('titleAbstract-title-control-en').then((content) => {
cy.setTinyMceContent('titleAbstract-title-control-en', content + ' - version 2');
});
cy.get('#titleAbstract .pkpButton').contains('Save').click();
cy.get('#titleAbstract [role="status"]').contains('Saved');
cy.get('#publication .pkpButton').contains('Publish').click();
cy.get('.pkp_modal .pkpButton').contains('Publish').click();
cy.get('button').contains('Save').click();
cy.get('[role="status"]').contains('Saved');
cy.get('button').contains('Publish').click();
cy.get('.pkpWorkflow__publishModal button').contains('Publish').click();
cy.wait(2000);

// Visit front-end pages
Expand Down Expand Up @@ -191,16 +184,16 @@ describe('Theme plugin tests', function() {
cy.get('#reviewerInterests input').type('psychotherapy,neuroscience,neurobiology', {delay: 0});
cy.get('button[type="submit"]').contains('Register').focus().click();
cy.get('a').contains('View Submissions').click();
cy.url().should('include', 'submissions');
cy.url().should('include', 'dashboard');
});

it('Log in/Log out', function() {
it('Log out/Log in', function() {
// Sign out
cy.visit(path + '/' + 'login/signOut');
cy.url().should('include', 'login');
cy.get('#username').type(user.username, {delay: 0});
cy.get('#password').type(user.username + user.username);
cy.get('#username').type('dbarnes', {delay: 0});
cy.get('#password').type('dbarnesdbarnes');
cy.get('button[type="submit"]').contains('Login').click();
cy.url().should('include', 'submissions');
cy.url().should('include', 'dashboard');
});
});

0 comments on commit 7518cdb

Please sign in to comment.