[Libreoffice-commits] online.git: cypress_test/integration_tests loleaflet/src
Tamás Zolnai (via logerrit)
logerrit at kemper.freedesktop.org
Mon Jun 15 13:33:50 UTC 2020
cypress_test/integration_tests/mobile/writer/hamburger_menu_spec.js | 84 ++++++++++
loleaflet/src/layer/tile/TileLayer.js | 6
2 files changed, 89 insertions(+), 1 deletion(-)
New commits:
commit 9102a8aaf51f49110a8c555fe4ab658873f47b03
Author: Tamás Zolnai <tamas.zolnai at collabora.com>
AuthorDate: Mon Jun 15 14:43:14 2020 +0200
Commit: Tamás Zolnai <tamas.zolnai at collabora.com>
CommitDate: Mon Jun 15 15:33:32 2020 +0200
cypress: test download as options (writer, mobile).
We can't test the actual download:
https://github.com/cypress-io/cypress/issues/949
What we test is that we get a proper URL, after triggered
the download as menu item. This src attribute is set after
the core exported the file and sent back the URL for it.
We avoid download for test, because we can't control the
download folder. It's better not to save files without
clean up. Downloading is not working in headless mode
anyway.
Change-Id: I93664be7f55e4df863448adc734fa9cfc7b3638f
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/96352
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
Reviewed-by: Tamás Zolnai <tamas.zolnai at collabora.com>
diff --git a/cypress_test/integration_tests/mobile/writer/hamburger_menu_spec.js b/cypress_test/integration_tests/mobile/writer/hamburger_menu_spec.js
index c024c286b..7ad042a2c 100644
--- a/cypress_test/integration_tests/mobile/writer/hamburger_menu_spec.js
+++ b/cypress_test/integration_tests/mobile/writer/hamburger_menu_spec.js
@@ -18,6 +18,90 @@ describe('Trigger hamburger menu options.', function() {
helper.afterAll(testFileName);
});
+ it('Download as PDF', function() {
+ mobileHelper.openHamburgerMenu();
+
+ cy.contains('.menu-entry-with-icon', 'Download as')
+ .click();
+
+ cy.contains('.menu-entry-with-icon', 'PDF Document (.pdf)')
+ .click();
+
+ cy.get('iframe')
+ .should('have.attr', 'data-src')
+ .should('contain', 'document.pdf');
+ });
+
+ it('Download as ODT', function() {
+ mobileHelper.openHamburgerMenu();
+
+ cy.contains('.menu-entry-with-icon', 'Download as')
+ .click();
+
+ cy.contains('.menu-entry-with-icon', 'ODF text document (.odt)')
+ .click();
+
+ cy.get('iframe')
+ .should('have.attr', 'data-src')
+ .should('contain', 'document.odt');
+ });
+
+ it('Download as DOC', function() {
+ mobileHelper.openHamburgerMenu();
+
+ cy.contains('.menu-entry-with-icon', 'Download as')
+ .click();
+
+ cy.contains('.menu-entry-with-icon', 'Word 2003 Document (.doc)')
+ .click();
+
+ cy.get('iframe')
+ .should('have.attr', 'data-src')
+ .should('contain', 'document.doc');
+ });
+
+ it('Download as DOCX', function() {
+ mobileHelper.openHamburgerMenu();
+
+ cy.contains('.menu-entry-with-icon', 'Download as')
+ .click();
+
+ cy.contains('.menu-entry-with-icon', 'Word Document (.docx)')
+ .click();
+
+ cy.get('iframe')
+ .should('have.attr', 'data-src')
+ .should('contain', 'document.docx');
+ });
+
+ it('Download as RTF', function() {
+ mobileHelper.openHamburgerMenu();
+
+ cy.contains('.menu-entry-with-icon', 'Download as')
+ .click();
+
+ cy.contains('.menu-entry-with-icon', 'Rich Text (.rtf)')
+ .click();
+
+ cy.get('iframe')
+ .should('have.attr', 'data-src')
+ .should('contain', 'document.rtf');
+ });
+
+ it('Download as EPUB', function() {
+ mobileHelper.openHamburgerMenu();
+
+ cy.contains('.menu-entry-with-icon', 'Download as')
+ .click();
+
+ cy.contains('.menu-entry-with-icon', 'EPUB (.epub)')
+ .click();
+
+ cy.get('iframe')
+ .should('have.attr', 'data-src')
+ .should('contain', 'document.epub');
+ });
+
it('Undo/redo.', function() {
// Type a new character
cy.get('textarea.clipboard')
diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js
index 7df2df248..2275206a5 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -934,7 +934,11 @@ L.TileLayer = L.GridLayer.extend({
this._map.fire('slidedownloadready', {url: url});
}
else if (command.id === 'export') {
- this._map._fileDownloader.src = url;
+ // Don't do a real download during testing
+ if (!L.Browser.cypressTest)
+ this._map._fileDownloader.src = url;
+ else
+ this._map._fileDownloader.setAttribute('data-src', url);
}
},
More information about the Libreoffice-commits
mailing list