[Libreoffice-commits] online.git: cypress_test/data cypress_test/integration_tests

Tamás Zolnai (via logerrit) logerrit at kemper.freedesktop.org
Sat Jul 4 19:40:23 UTC 2020


 cypress_test/data/mobile/calc/hamburger_menu.ods                  |binary
 cypress_test/integration_tests/mobile/calc/calc_mobile_helper.js  |    6 
 cypress_test/integration_tests/mobile/calc/hamburger_menu_spec.js |  249 ++++++++++
 3 files changed, 254 insertions(+), 1 deletion(-)

New commits:
commit 390f8299820028c7bf0436d02fdffb9727fd4b9c
Author:     Tamás Zolnai <tamas.zolnai at collabora.com>
AuthorDate: Sat Jul 4 16:08:27 2020 +0200
Commit:     Tamás Zolnai <tamas.zolnai at collabora.com>
CommitDate: Sat Jul 4 21:40:05 2020 +0200

    cypress: more tests for calc's hamburger menu (mobile).
    
    Change-Id: I603ccb1c212a564feef649e19b608b9c4becd3bd
    Reviewed-on: https://gerrit.libreoffice.org/c/online/+/97960
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Tamás Zolnai <tamas.zolnai at collabora.com>

diff --git a/cypress_test/data/mobile/calc/hamburger_menu.ods b/cypress_test/data/mobile/calc/hamburger_menu.ods
index 2e2c500fc..699010582 100644
Binary files a/cypress_test/data/mobile/calc/hamburger_menu.ods and b/cypress_test/data/mobile/calc/hamburger_menu.ods differ
diff --git a/cypress_test/integration_tests/mobile/calc/calc_mobile_helper.js b/cypress_test/integration_tests/mobile/calc/calc_mobile_helper.js
index 85d888e11..ab21e53a2 100644
--- a/cypress_test/integration_tests/mobile/calc/calc_mobile_helper.js
+++ b/cypress_test/integration_tests/mobile/calc/calc_mobile_helper.js
@@ -35,7 +35,11 @@ function selectAllMobile(removeSelection = true) {
 		removeTextSelection();
 
 	cy.get('#spreadsheet-header-corner')
-		.click();
+		.then(function(corner) {
+			var yPos = corner.height() - 10;
+			cy.get('#spreadsheet-header-corner')
+				.click(0, yPos);
+		});
 
 	cy.get('.spreadsheet-cell-resize-marker')
 		.should('be.visible');
diff --git a/cypress_test/integration_tests/mobile/calc/hamburger_menu_spec.js b/cypress_test/integration_tests/mobile/calc/hamburger_menu_spec.js
index f3a75861f..154f651d3 100644
--- a/cypress_test/integration_tests/mobile/calc/hamburger_menu_spec.js
+++ b/cypress_test/integration_tests/mobile/calc/hamburger_menu_spec.js
@@ -432,6 +432,255 @@ describe('Trigger hamburger menu options.', function() {
 			});
 	});
 
+	it('Data: grouping / ungrouping.', function() {
+		before('hamburger_menu.ods');
+
+		// Use columns header height as indicator
+		helper.initAliasToNegative('origHeaderHeight');
+
+		cy.get('.spreadsheet-header-columns')
+			.invoke('height')
+			.as('origHeaderHeight');
+
+		cy.get('@origHeaderHeight')
+			.should('be.greaterThan', 0);
+
+		// Group first
+		calcMobileHelper.selectFirstColumn();
+
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Data')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group and Outline')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group...')
+			.click();
+
+		cy.get('@origHeaderHeight')
+			.then(function(origHeaderHeight) {
+				cy.get('.spreadsheet-header-columns')
+					.should(function(header) {
+						expect(header.height()).to.be.greaterThan(origHeaderHeight);
+					});
+			});
+
+		// Then ungroup
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Data')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group and Outline')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Ungroup...')
+			.click();
+
+		cy.get('@origHeaderHeight')
+			.then(function(origHeaderHeight) {
+				cy.get('.spreadsheet-header-columns')
+					.should(function(header) {
+						expect(header.height()).to.be.at.most(origHeaderHeight);
+					});
+			});
+	});
+
+	it('Data: remove grouping outline.', function() {
+		before('hamburger_menu.ods');
+
+		// Use columns header height as indicator
+		helper.initAliasToNegative('origHeaderHeight');
+
+		cy.get('.spreadsheet-header-columns')
+			.invoke('height')
+			.as('origHeaderHeight');
+
+		cy.get('@origHeaderHeight')
+			.should('be.greaterThan', 0);
+
+		// Group first
+		calcMobileHelper.selectFirstColumn();
+
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Data')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group and Outline')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group...')
+			.click();
+
+		cy.get('@origHeaderHeight')
+			.then(function(origHeaderHeight) {
+				cy.get('.spreadsheet-header-columns')
+					.should(function(header) {
+						expect(header.height()).to.be.greaterThan(origHeaderHeight);
+					});
+			});
+
+		// Then remove outline
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Data')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group and Outline')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Remove Outline')
+			.click();
+
+		cy.get('@origHeaderHeight')
+			.then(function(origHeaderHeight) {
+				cy.get('.spreadsheet-header-columns')
+					.should(function(header) {
+						expect(header.height()).to.be.at.most(origHeaderHeight);
+					});
+			});
+	});
+
+	it('Data: show / hide grouping details.', function() {
+		before('hamburger_menu.ods');
+
+		// Use columns header height as indicator
+		helper.initAliasToNegative('origHeaderHeight');
+
+		cy.get('.spreadsheet-header-columns')
+			.invoke('height')
+			.as('origHeaderHeight');
+
+		cy.get('@origHeaderHeight')
+			.should('be.greaterThan', 0);
+
+		// Group first
+		calcMobileHelper.selectFirstColumn();
+
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Data')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group and Outline')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group...')
+			.click();
+
+		cy.get('@origHeaderHeight')
+			.then(function(origHeaderHeight) {
+				cy.get('.spreadsheet-header-columns')
+					.should(function(header) {
+						expect(header.height()).to.be.greaterThan(origHeaderHeight);
+					});
+			});
+
+		// Use selected content as indicator
+		calcMobileHelper.selectAllMobile(false);
+
+		cy.get('#copy-paste-container table')
+			.should('exist');
+
+		// Hide details
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Data')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group and Outline')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Hide Details')
+			.click();
+
+		// Frist column is hidden -> no content
+		calcMobileHelper.selectAllMobile(false);
+
+		cy.get('#copy-paste-container table')
+			.should('not.exist');
+
+		// Show details
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Data')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Group and Outline')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Show Details')
+			.click();
+
+		// Frist column is visible again -> we have content again
+		calcMobileHelper.selectAllMobile(false);
+
+		cy.get('#copy-paste-container table')
+			.should('exist');
+	});
+
+	it('Automatic spell checking.', function() {
+		before('hamburger_menu.ods');
+
+		// Make everything white on tile
+		calcMobileHelper.selectAllMobile(false);
+
+		mobileHelper.openMobileWizard();
+
+		cy.get('#ScCellAppearancePropertyPanel')
+			.click();
+
+		cy.contains('.menu-entry-with-icon', 'Background Color')
+			.should('be.visible');
+
+		cy.get('#border-12')
+			.click();
+
+		cy.get('#FrameLineColor')
+			.click();
+
+		mobileHelper.selectFromColorPalette(2, 0, 7);
+
+		mobileHelper.closeMobileWizard();
+
+		mobileHelper.openMobileWizard();
+
+		cy.get('#TextPropertyPanel')
+			.click();
+
+		cy.get('#Bold')
+			.should('be.visible');
+
+		cy.get('#Color')
+			.click();
+
+		mobileHelper.selectFromColorPalette(0, 0, 7);
+
+		var firstTile = '.leaflet-tile-loaded[style=\'width: 256px; height: 256px; left: -1px; top: 5px;\']';
+		var centerTile = '.leaflet-tile-loaded[style=\'width: 256px; height: 256px; left: 255px; top: 5px;\']';
+		helper.imageShouldBeFullWhiteOrNot(centerTile, true);
+		helper.imageShouldBeFullWhiteOrNot(firstTile, false);
+
+		// Disable automatic spell checking
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Automatic Spell Checking')
+			.click();
+
+		helper.imageShouldBeFullWhiteOrNot(firstTile, true);
+
+		// Enable automatic spell checking again
+		mobileHelper.openHamburgerMenu();
+
+		cy.contains('.menu-entry-with-icon', 'Automatic Spell Checking')
+			.click();
+
+		helper.imageShouldBeFullWhiteOrNot(firstTile, false);
+	});
+
 	it('Check version information.', function() {
 		before('hamburger_menu.ods');
 


More information about the Libreoffice-commits mailing list