describe("tools/patronclubs/clubsearchtohold", function () {
const languages = ['en', 'es-ES', 'fr-FR', 'de-DE', 'el-GR', 'hi', 'zh-Hant-TW'];
languages.forEach((lang) => {
describe(`in ${lang}`, () => {
beforeEach(function(){
// If previous test failed, skip this one
if (Cypress.env("TEST_FAILED")) {
this.skip();
}
cy.query("INSERT INTO club_templates (id, name, description, is_enrollable_from_opac, is_email_required, branchcode, is_deletable) VALUES (1, 'Test', 'Test club Template', 0, 0, 'CPL', 1)")
cy.query("INSERT INTO clubs (id, club_template_id, name, description, date_start, date_end, branchcode) VALUES (1, 1, 'March Club', 'Meet to discuss the selected title', '2025-09-01', '2099-01-01', 'CPL')")
cy.query("INSERT INTO club_template_enrollment_fields (id, club_template_id, name, description, authorised_value_category) VALUES (1, 1, 'Do you need a large print version of the book?', 'Large print is easier to read', 'YES_NO')")
cy.query("INSERT INTO club_template_enrollment_fields (id, club_template_id, name, description, authorised_value_category) VALUES (2, 1, 'Do you need an audio version of the book?', 'We also have audiobooks for most books', 'YES_NO')")
cy.query("INSERT INTO club_enrollments (id, club_id, borrowernumber, date_enrolled, date_created, branchcode) VALUES (1, 1, 49, '2025-09-18 14:08:08', '2025-09-18 14:08:08', 'CPL')")
cy.query("INSERT INTO club_enrollments (id, club_id, borrowernumber, date_enrolled, date_created, branchcode) VALUES (2, 1, 19, '2025-09-18 14:08:08', '2025-09-18 14:08:08', 'CPL')")
cy.query("INSERT INTO club_enrollments (id, club_id, borrowernumber, date_enrolled, date_created, branchcode) VALUES (3, 1, 5, '2025-09-18 14:08:08', '2025-09-18 14:08:08', 'CPL')")
cy.query("INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (1, 1, 1, 0)")
cy.query("INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (2, 1, 2, 0)")
cy.query("INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (3, 2, 1, 1)")
cy.query("INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (4, 2, 2, 0)")
cy.query("INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (5, 3, 1, 0)")
cy.query("INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (6, 3, 2, 1)")
cy.login();
/* No specific padding defined */
cy.set_cookie_lang(lang);
});
it("clubsearchtohold", function () {
cy.visit("/cgi-bin/koha/clubs/clubs.pl");
cy.waitForPageLoad();
cy.get("#clubactions1").click();
cy.wait_for_ajax();
cy.get("a.dropdown-item.club_hold_search").addCursor();
cy.get("main").should('be.visible').screenshot("clubsearchtohold");
});
});
});
afterEach(function () {
cy.query("DELETE FROM club_templates WHERE id=1")
cy.query("DELETE FROM clubs WHERE id=1")
cy.query("DELETE FROM club_template_enrollment_fields WHERE id=1")
cy.query("DELETE FROM club_template_enrollment_fields WHERE id=2")
cy.query("DELETE FROM club_enrollments WHERE id=1")
cy.query("DELETE FROM club_enrollments WHERE id=2")
cy.query("DELETE FROM club_enrollments WHERE id=3")
cy.query("DELETE FROM club_enrollment_fields WHERE id=1")
cy.query("DELETE FROM club_enrollment_fields WHERE id=2")
cy.query("DELETE FROM club_enrollment_fields WHERE id=3")
cy.query("DELETE FROM club_enrollment_fields WHERE id=4")
cy.query("DELETE FROM club_enrollment_fields WHERE id=5")
cy.query("DELETE FROM club_enrollment_fields WHERE id=6")
Cypress.env('PADDING_BEFORE_SCREENSHOT', undefined);
if (this.currentTest.state === 'failed') {
Cypress.env("TEST_FAILED", true);
}
});
});
Spec data
Page
clubs/clubs.pl
Interface
staff
Element selector
main
Missing selector
N
setup
sql INSERT INTO club_templates (id, name, description, is_enrollable_from_opac, is_email_required, branchcode, is_deletable) VALUES (1, 'Test', 'Test club Template', 0, 0, 'CPL', 1)
sql INSERT INTO clubs (id, club_template_id, name, description, date_start, date_end, branchcode) VALUES (1, 1, 'March Club', 'Meet to discuss the selected title', '2025-09-01', '2099-01-01', 'CPL')
sql INSERT INTO club_template_enrollment_fields (id, club_template_id, name, description, authorised_value_category) VALUES (1, 1, 'Do you need a large print version of the book?', 'Large print is easier to read', 'YES_NO')
sql INSERT INTO club_template_enrollment_fields (id, club_template_id, name, description, authorised_value_category) VALUES (2, 1, 'Do you need an audio version of the book?', 'We also have audiobooks for most books', 'YES_NO')
sql INSERT INTO club_enrollments (id, club_id, borrowernumber, date_enrolled, date_created, branchcode) VALUES (1, 1, 49, '2025-09-18 14:08:08', '2025-09-18 14:08:08', 'CPL')
sql INSERT INTO club_enrollments (id, club_id, borrowernumber, date_enrolled, date_created, branchcode) VALUES (2, 1, 19, '2025-09-18 14:08:08', '2025-09-18 14:08:08', 'CPL')
sql INSERT INTO club_enrollments (id, club_id, borrowernumber, date_enrolled, date_created, branchcode) VALUES (3, 1, 5, '2025-09-18 14:08:08', '2025-09-18 14:08:08', 'CPL')
sql INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (1, 1, 1, 0)
sql INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (2, 1, 2, 0)
sql INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (3, 2, 1, 1)
sql INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (4, 2, 2, 0)
sql INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (5, 3, 1, 0)
sql INSERT INTO club_enrollment_fields (id, club_enrollment_id, club_template_enrollment_field_id, value) VALUES (6, 3, 2, 1)
sql DELETE FROM club_templates WHERE id=1
sql DELETE FROM clubs WHERE id=1
sql DELETE FROM club_template_enrollment_fields WHERE id=1
sql DELETE FROM club_template_enrollment_fields WHERE id=2
sql DELETE FROM club_enrollments WHERE id=1
sql DELETE FROM club_enrollments WHERE id=2
sql DELETE FROM club_enrollments WHERE id=3
sql DELETE FROM club_enrollment_fields WHERE id=1
sql DELETE FROM club_enrollment_fields WHERE id=2
sql DELETE FROM club_enrollment_fields WHERE id=3
sql DELETE FROM club_enrollment_fields WHERE id=4
sql DELETE FROM club_enrollment_fields WHERE id=5
sql DELETE FROM club_enrollment_fields WHERE id=6