From 580c3f4ffe9608d2beb56d418c68b3b112420e76 Mon Sep 17 00:00:00 2001 From: Mario Date: Sun, 10 Nov 2019 12:49:51 +0000 Subject: another bulk of composer updates (cherry picked from commit 6685381fd8db507493c3d7c1793f8c05c681bbce) --- .../wdio/test/pages/file-upload.js | 75 ++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 vendor/blueimp/jquery-file-upload/wdio/test/pages/file-upload.js (limited to 'vendor/blueimp/jquery-file-upload/wdio/test/pages') diff --git a/vendor/blueimp/jquery-file-upload/wdio/test/pages/file-upload.js b/vendor/blueimp/jquery-file-upload/wdio/test/pages/file-upload.js new file mode 100644 index 000000000..dfef36394 --- /dev/null +++ b/vendor/blueimp/jquery-file-upload/wdio/test/pages/file-upload.js @@ -0,0 +1,75 @@ +'use strict' + +/* global browser, $, $$ */ +/* eslint-disable class-methods-use-this */ + +class FileUpload { + get fileinput() { + return $('.fileinput-button input') + } + get start() { + return $('.fileupload-buttonbar .start') + } + get toggle() { + return $('.fileupload-buttonbar .toggle') + } + get remove() { + return $('.fileupload-buttonbar .delete') + } + get processing() { + return $$('.files .processing') + } + get uploads() { + return $$('.files .template-upload') + } + get downloads() { + return $$('.files .template-download') + } + get checked() { + return $$('.files .toggle:checked') + } + /** + * Opens the file upload form. + * + * @param {number} [timeout] Wait timeout + * @returns {FileUpload} FileUpload object + */ + open(timeout) { + browser.url('/') + this.fileinput.waitForExist(timeout) + return this + } + /** + * Uploads files. + * + * @param {Array} files Files to upload + * @param {number} [timeout] Wait timeout + * @returns {FileUpload} FileUpload object + */ + upload(files, timeout) { + this.fileinput.addValue(files.join('\n')) + browser.waitUntil(() => !this.processing.length, timeout) + this.start.click() + browser.waitUntil(() => !!this.downloads.length, timeout) + browser.waitUntil(() => !this.uploads.length, timeout) + return this + } + /** + * Deletes uploaded files. + * + * @param {number} [timeout] Wait timeout + * @returns {FileUpload} FileUpload object + */ + delete(timeout) { + this.toggle.click() + browser.waitUntil( + () => this.downloads.length === this.checked.length, + timeout + ) + this.remove.click() + browser.waitUntil(() => !this.downloads.length, timeout) + return this + } +} + +module.exports = new FileUpload() -- cgit v1.2.3