summaryrefslogtreecommitdiff
path: root/addons/web/static/tests/helpers/test_utils_file.js
diff options
context:
space:
mode:
authorVincent Schippefilt <vsc@odoo.com>2019-03-06 14:02:32 +0100
committerAaron Bohy <aab@odoo.com>2019-03-06 20:07:17 +0100
commitab56e637b7f97ddcdbcc9baea99ae097e342409c (patch)
tree4cb47da9f7ef89b19d18429220a7507470ec12a9 /addons/web/static/tests/helpers/test_utils_file.js
parenteeed894fd50e477135e1ac9a82f6e98ce063ab90 (diff)
[REF] web: adapt code after jQuery update
Part of task 1896658 Co-authored-by: Aaron Bohy <aab@odoo.com> Co-authored-by: Christophe Matthieu <chm@odoo.com> Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com> Co-authored-by: David Monjoie <dmo@odoo.com> Co-authored-by: Martin Geubelle <mge@odoo.com> Co-authored-by: svs-odoo <svs@odoo.com> Co-authored-by: Vincent Schippefilt <vsc@odoo.com>
Diffstat (limited to 'addons/web/static/tests/helpers/test_utils_file.js')
-rw-r--r--addons/web/static/tests/helpers/test_utils_file.js35
1 files changed, 18 insertions, 17 deletions
diff --git a/addons/web/static/tests/helpers/test_utils_file.js b/addons/web/static/tests/helpers/test_utils_file.js
index 64e044e3180..e5b68a28e0b 100644
--- a/addons/web/static/tests/helpers/test_utils_file.js
+++ b/addons/web/static/tests/helpers/test_utils_file.js
@@ -47,29 +47,30 @@ function _createFakeDataTransfer(file) {
* @param {string} data.name
* @param {string} data.content
* @param {string} data.contentType
- * @returns {$.Promise<Object>} resolved with file created
+ * @returns {Promise<Object>} resolved with file created
*/
function createFile(data) {
- var def = $.Deferred();
- var requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
- if (!requestFileSystem) {
- throw new Error('FileSystem API is not supported');
- }
- requestFileSystem(window.TEMPORARY, 1024 * 1024, function (fileSystem) {
- fileSystem.root.getFile(data.name, { create: true }, function (fileEntry) {
- fileEntry.createWriter(function (fileWriter) {
- fileWriter.onwriteend = function (e) {
- fileSystem.root.getFile(data.name, {}, function (fileEntry) {
- fileEntry.file(function (file) {
- def.resolve(file);
+ // Note: this is only supported by Chrome, and does not work in Incognito mode
+ return new Promise(function (resolve, reject) {
+ var requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
+ if (!requestFileSystem) {
+ throw new Error('FileSystem API is not supported');
+ }
+ requestFileSystem(window.TEMPORARY, 1024 * 1024, function (fileSystem) {
+ fileSystem.root.getFile(data.name, { create: true }, function (fileEntry) {
+ fileEntry.createWriter(function (fileWriter) {
+ fileWriter.onwriteend = function (e) {
+ fileSystem.root.getFile(data.name, {}, function (fileEntry) {
+ fileEntry.file(function (file) {
+ resolve(file);
+ });
});
- });
- };
- fileWriter.write(new Blob([ data.content ], { type: data.contentType }));
+ };
+ fileWriter.write(new Blob([ data.content ], { type: data.contentType }));
+ });
});
});
});
- return def;
}
/**