describe("admin/basicparams/addlibrarytogroup", function () {
const languages = ['en', 'es-ES', 'fr-FR', 'de-DE', 'el-GR', 'hi', 'zh-Hant-TW'];
languages.forEach((lang) => {
describe(`in ${lang}`, () => {
beforeEach(function(){
// Skip if 'en' test failed
if (Cypress.env("EN_TEST_FAILED")) {
this.skip();
}
cy.query("INSERT INTO library_groups (`title`,`description`,`ft_hide_patron_info`,`ft_limit_item_editing`,`ft_search_groups_opac`,`ft_search_groups_staff`,`ft_local_hold_group`,`ft_local_float_group`,`created_on`,`updated_on`) VALUES ('Central libraries','library group for central libraries',0,1,1,1,1,0,TIMESTAMP(CURDATE()),TIMESTAMP(CURDATE()));")
cy.query("INSERT INTO library_groups (`title`,`description`,`ft_hide_patron_info`,`ft_limit_item_editing`,`ft_search_groups_opac`,`ft_search_groups_staff`,`ft_local_hold_group`,`ft_local_float_group`,`created_on`,`updated_on`) VALUES ('Northeast libraries','library group for northeast libraries',0,1,1,1,1,0,TIMESTAMP(CURDATE()),TIMESTAMP(CURDATE()));")
cy.query("INSERT INTO library_groups (`title`,`description`,`ft_hide_patron_info`,`ft_limit_item_editing`,`ft_search_groups_opac`,`ft_search_groups_staff`,`ft_local_hold_group`,`ft_local_float_group`,`created_on`,`updated_on`) VALUES ('Southwest libraries','library group for southwest libraries',0,1,1,1,1,0,TIMESTAMP(CURDATE()),TIMESTAMP(CURDATE()));")
cy.login();
/* No specific padding defined */
cy.set_cookie_lang(lang);
});
it("addlibrarytogroup", function () {
cy.visit("/cgi-bin/koha/admin/library_groups.pl");
cy.waitForPageLoad();
cy.waitForPageLoad();
cy.get("div.page-section:nth-child(4) > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(2) > td:nth-child(4) > div:nth-child(2)").click();
cy.get("main").should('be.visible').screenshot("addlibrarytogroup");
});
});
});
afterEach(function () {
cy.query("DELETE FROM library_groups WHERE title IN('Central libraries','Northeast libraries','Southwest libraries')")
Cypress.env('PADDING_BEFORE_SCREENSHOT', undefined);
// Set EN_TEST_FAILED if the 'en' test failed
if (this.currentTest.parent.title.includes('in en') && this.currentTest.state === 'failed') {
Cypress.env("EN_TEST_FAILED", true);
}
});
});
Spec data
Page
admin/library_groups.pl
Interface
staff
Element selector
main
Missing selector
Y
setup
sql INSERT INTO library_groups (`title`,`description`,`ft_hide_patron_info`,`ft_limit_item_editing`,`ft_search_groups_opac`,`ft_search_groups_staff`,`ft_local_hold_group`,`ft_local_float_group`,`created_on`,`updated_on`) VALUES ('Central libraries','library group for central libraries',0,1,1,1,1,0,TIMESTAMP(CURDATE()),TIMESTAMP(CURDATE()));
sql INSERT INTO library_groups (`title`,`description`,`ft_hide_patron_info`,`ft_limit_item_editing`,`ft_search_groups_opac`,`ft_search_groups_staff`,`ft_local_hold_group`,`ft_local_float_group`,`created_on`,`updated_on`) VALUES ('Northeast libraries','library group for northeast libraries',0,1,1,1,1,0,TIMESTAMP(CURDATE()),TIMESTAMP(CURDATE()));
sql INSERT INTO library_groups (`title`,`description`,`ft_hide_patron_info`,`ft_limit_item_editing`,`ft_search_groups_opac`,`ft_search_groups_staff`,`ft_local_hold_group`,`ft_local_float_group`,`created_on`,`updated_on`) VALUES ('Southwest libraries','library group for southwest libraries',0,1,1,1,1,0,TIMESTAMP(CURDATE()),TIMESTAMP(CURDATE()));
sql DELETE FROM library_groups WHERE title IN('Central libraries','Northeast libraries','Southwest libraries')
Notes
Page: library_groups.pl
Element selector: admin_library_groups
workflow
Go to Administration > Library groups > click New group > add 'Central libraries and select last 4 options > Save > click DROP-DOWN Add library
Philip: Missing a proper selector for the dropdown menu. We have to work with nth-child. :(