aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files/tests
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2014-06-23 16:35:11 +0200
committerVincent Petry <pvince81@owncloud.com>2014-06-23 16:35:11 +0200
commit7d4747ea1692f42b9ae007cf5da654a95c610ec3 (patch)
treebd580d068fd479bb7ef96d3b107eefd8653e796e /apps/files/tests
parent8c8209828126a55b9bf775e00cbc14d7ef7db5ae (diff)
downloadnextcloud-server-7d4747ea1692f42b9ae007cf5da654a95c610ec3.tar.gz
nextcloud-server-7d4747ea1692f42b9ae007cf5da654a95c610ec3.zip
Fix blurring of invalid file name on rename
When renaming to an existing file name, blurring the field should not remove it. This fix keeps the field until escape is pressed instead of replacing it with a broken empty space.
Diffstat (limited to 'apps/files/tests')
-rw-r--r--apps/files/tests/js/filelistSpec.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/apps/files/tests/js/filelistSpec.js b/apps/files/tests/js/filelistSpec.js
index 743ebf9706a..0b0ff0412b2 100644
--- a/apps/files/tests/js/filelistSpec.js
+++ b/apps/files/tests/js/filelistSpec.js
@@ -595,6 +595,47 @@ describe('OCA.Files.FileList tests', function() {
expect(fileList.$fileList.find('input.filename').length).toEqual(0);
expect(fileList.$fileList.find('form').length).toEqual(0);
});
+ it('Validates the file name', function() {
+ var $input, $tr;
+
+ for (var i = 0; i < testFiles.length; i++) {
+ fileList.add(testFiles[i], {silent: true});
+ }
+
+ // trigger rename prompt
+ fileList.rename('One.txt');
+ $input = fileList.$fileList.find('input.filename');
+ $input.val('Two.jpg');
+
+ // simulate key to trigger validation
+ $input.trigger(new $.Event('keyup', {keyCode: 97}));
+
+ // input is still there with error
+ expect(fileList.$fileList.find('input.filename').length).toEqual(1);
+ expect(fileList.$fileList.find('input.filename').hasClass('error')).toEqual(true);
+
+ // trigger submit does not send server request
+ $input.closest('form').trigger('submit');
+ expect(fakeServer.requests.length).toEqual(0);
+
+ // simulate escape key
+ $input.trigger(new $.Event('keyup', {keyCode: 27}));
+
+ // element is added back with the correct name
+ $tr = fileList.findFileEl('One.txt');
+ expect($tr.length).toEqual(1);
+ expect($tr.find('a .nametext').text().trim()).toEqual('One.txt');
+ expect($tr.find('a.name').is(':visible')).toEqual(true);
+
+ $tr = fileList.findFileEl('Two.jpg');
+ expect($tr.length).toEqual(1);
+ expect($tr.find('a .nametext').text().trim()).toEqual('Two.jpg');
+ expect($tr.find('a.name').is(':visible')).toEqual(true);
+
+ // input and form are gone
+ expect(fileList.$fileList.find('input.filename').length).toEqual(0);
+ expect(fileList.$fileList.find('form').length).toEqual(0);
+ });
});
describe('Moving files', function() {
beforeEach(function() {