diff options
Diffstat (limited to 'apps/files/tests')
-rw-r--r-- | apps/files/tests/js/filelistSpec.js | 60 |
1 files changed, 35 insertions, 25 deletions
diff --git a/apps/files/tests/js/filelistSpec.js b/apps/files/tests/js/filelistSpec.js index e1a374146fe..5b72a1355cf 100644 --- a/apps/files/tests/js/filelistSpec.js +++ b/apps/files/tests/js/filelistSpec.js @@ -1370,7 +1370,8 @@ describe('OCA.Files.FileList tests', function() { "Content-Type": "application/json" }, JSON.stringify(data) - ]); + ] + ); fileList.changeDirectory('/'); fakeServer.respond(); expect($('.select-all').prop('checked')).toEqual(false); @@ -1388,6 +1389,37 @@ describe('OCA.Files.FileList tests', function() { expect(selectedFiles.length).toEqual(41); }); + describe('clearing the selection', function() { + it('clears selected files selected individually calling setFiles()', function() { + var selectedFiles; + + fileList.setFiles(generateFiles(0, 41)); + fileList.$fileList.find('tr:eq(5) input:checkbox:first').click(); + fileList.$fileList.find('tr:eq(7) input:checkbox:first').click(); + + selectedFiles = _.pluck(fileList.getSelectedFiles(), 'name'); + expect(selectedFiles.length).toEqual(2); + + fileList.setFiles(generateFiles(0, 2)); + + selectedFiles = _.pluck(fileList.getSelectedFiles(), 'name'); + expect(selectedFiles.length).toEqual(0); + }); + it('clears selected files selected with select all when calling setFiles()', function() { + var selectedFiles; + + fileList.setFiles(generateFiles(0, 41)); + $('.select-all').click(); + + selectedFiles = _.pluck(fileList.getSelectedFiles(), 'name'); + expect(selectedFiles.length).toEqual(42); + + fileList.setFiles(generateFiles(0, 2)); + + selectedFiles = _.pluck(fileList.getSelectedFiles(), 'name'); + expect(selectedFiles.length).toEqual(0); + }); + }); describe('Selection overlay', function() { it('show delete action according to directory permissions', function() { fileList.setFiles(testFiles); @@ -1732,20 +1764,6 @@ describe('OCA.Files.FileList tests', function() { return ev; } - /** - * Convert form data to a flat list - * - * @param formData form data array as used by jquery.upload - * @return map based on the array's key values - */ - function decodeFormData(data) { - var map = {}; - _.each(data.formData(), function(entry) { - map[entry.name] = entry.value; - }); - return map; - } - beforeEach(function() { // simulate data structure from jquery.upload uploadData = { @@ -1805,11 +1823,7 @@ describe('OCA.Files.FileList tests', function() { ev = dropOn(fileList.findFileEl('somedir').find('td:eq(2)'), uploadData); expect(ev.result).not.toEqual(false); - expect(uploadData.formData).toBeDefined(); - formData = decodeFormData(uploadData); - expect(formData.dir).toEqual('/subdir/somedir'); - expect(formData.file_directory).toEqual('fileToUpload.txt'); - expect(formData.requesttoken).toBeDefined(); + expect(uploadData.targetDir).toEqual('/subdir/somedir'); }); it('drop on a breadcrumb inside the table triggers upload to target folder', function() { var ev, formData; @@ -1817,11 +1831,7 @@ describe('OCA.Files.FileList tests', function() { ev = dropOn(fileList.$el.find('.crumb:eq(2)'), uploadData); expect(ev.result).not.toEqual(false); - expect(uploadData.formData).toBeDefined(); - formData = decodeFormData(uploadData); - expect(formData.dir).toEqual('/a/b'); - expect(formData.file_directory).toEqual('fileToUpload.txt'); - expect(formData.requesttoken).toBeDefined(); + expect(uploadData.targetDir).toEqual('/a/b'); }); }); }); |