Fixed failing test cases for the new actions menu.
Signed-off-by: Abijeet <abijeetpatro@gmail.com>
This commit is contained in:
parent
0ca9ce0f84
commit
e89f6590e2
|
@ -94,9 +94,7 @@ describe('OCA.Files.FileList tests', function() {
|
|||
'<input type="checkbox" id="select_all_files" class="select-all checkbox">' +
|
||||
'<a class="name columntitle" data-sort="name"><span>Name</span><span class="sort-indicator"></span></a>' +
|
||||
'<span id="selectedActionsList" class="selectedActions hidden">' +
|
||||
'<a href class="copy-move"><span class="label">Move or copy</span></a>' +
|
||||
'<a href class="download"><img src="actions/download.svg">Download</a>' +
|
||||
'<a href class="delete-selected">Delete</a></span>' +
|
||||
'<a href="" class="actions-selected"><span class="icon icon-more"></span><span>Actions</span></a>' +
|
||||
'</th>' +
|
||||
'<th class="hidden column-size"><a class="columntitle" data-sort="size"><span class="sort-indicator"></span></a></th>' +
|
||||
'<th class="hidden column-mtime"><a class="columntitle" data-sort="mtime"><span class="sort-indicator"></span></a></th>' +
|
||||
|
@ -161,7 +159,22 @@ describe('OCA.Files.FileList tests', function() {
|
|||
fileList = new OCA.Files.FileList($('#app-content-files'), {
|
||||
filesClient: filesClient,
|
||||
config: filesConfig,
|
||||
enableUpload: true
|
||||
enableUpload: true,
|
||||
multiSelectMenu: [{
|
||||
name: 'copyMove',
|
||||
displayName: t('files', 'Move or copy'),
|
||||
iconClass: 'icon-external',
|
||||
},
|
||||
{
|
||||
name: 'download',
|
||||
displayName: t('files', 'Download'),
|
||||
iconClass: 'icon-download',
|
||||
},
|
||||
{
|
||||
name: 'delete',
|
||||
displayName: t('files', 'Delete'),
|
||||
iconClass: 'icon-delete',
|
||||
}]
|
||||
});
|
||||
});
|
||||
afterEach(function() {
|
||||
|
@ -2100,41 +2113,41 @@ describe('OCA.Files.FileList tests', function() {
|
|||
fileList.setFiles(testFiles);
|
||||
$('#permissions').val(OC.PERMISSION_READ | OC.PERMISSION_UPDATE);
|
||||
$('.select-all').click();
|
||||
expect(fileList.$el.find('.selectedActions .copy-move').hasClass('hidden')).toEqual(false);
|
||||
expect(fileList.$el.find('.selectedActions .copy-move .label').text()).toEqual('Move or copy');
|
||||
expect(fileList.$el.find('.selectedActions .item-copyMove').hasClass('hidden')).toEqual(false);
|
||||
expect(fileList.$el.find('.selectedActions .item-copyMove .label').text()).toEqual('Move or copy');
|
||||
testFiles[0].permissions = OC.PERMISSION_READ;
|
||||
$('.select-all').click();
|
||||
fileList.setFiles(testFiles);
|
||||
$('.select-all').click();
|
||||
expect(fileList.$el.find('.selectedActions .copy-move').hasClass('hidden')).toEqual(false);
|
||||
expect(fileList.$el.find('.selectedActions .copy-move .label').text()).toEqual('Copy');
|
||||
expect(fileList.$el.find('.selectedActions .item-copyMove').hasClass('hidden')).toEqual(false);
|
||||
expect(fileList.$el.find('.selectedActions .item-copyMove .label').text()).toEqual('Copy');
|
||||
testFiles[0].permissions = OC.PERMISSION_NONE;
|
||||
$('.select-all').click();
|
||||
fileList.setFiles(testFiles);
|
||||
$('.select-all').click();
|
||||
expect(fileList.$el.find('.selectedActions .copy-move').hasClass('hidden')).toEqual(true);
|
||||
expect(fileList.$el.find('.selectedActions .item-copyMove').hasClass('hidden')).toEqual(true);
|
||||
});
|
||||
it('show doesnt show the download action if one or more files are not downloadable', function () {
|
||||
fileList.setFiles(testFiles);
|
||||
$('#permissions').val(OC.PERMISSION_READ | OC.PERMISSION_UPDATE);
|
||||
$('.select-all').click();
|
||||
expect(fileList.$el.find('.selectedActions .download').hasClass('hidden')).toEqual(false);
|
||||
expect(fileList.$el.find('.selectedActions .item-download').hasClass('hidden')).toEqual(false);
|
||||
testFiles[0].permissions = OC.PERMISSION_UPDATE;
|
||||
$('.select-all').click();
|
||||
fileList.setFiles(testFiles);
|
||||
$('.select-all').click();
|
||||
expect(fileList.$el.find('.selectedActions .download').hasClass('hidden')).toEqual(true);
|
||||
expect(fileList.$el.find('.selectedActions .item-download').hasClass('hidden')).toEqual(true);
|
||||
});
|
||||
it('show doesnt show the delete action if one or more files are not deletable', function () {
|
||||
fileList.setFiles(testFiles);
|
||||
$('#permissions').val(OC.PERMISSION_READ | OC.PERMISSION_DELETE);
|
||||
$('.select-all').click();
|
||||
expect(fileList.$el.find('.delete-selected').hasClass('hidden')).toEqual(false);
|
||||
expect(fileList.$el.find('.selectedActions .item-delete').hasClass('hidden')).toEqual(false);
|
||||
testFiles[0].permissions = OC.PERMISSION_READ;
|
||||
$('.select-all').click();
|
||||
fileList.setFiles(testFiles);
|
||||
$('.select-all').click();
|
||||
expect(fileList.$el.find('.delete-selected').hasClass('hidden')).toEqual(true);
|
||||
expect(fileList.$el.find('.selectedActions .item-delete').hasClass('hidden')).toEqual(true);
|
||||
});
|
||||
});
|
||||
describe('Actions', function() {
|
||||
|
@ -2219,8 +2232,12 @@ describe('OCA.Files.FileList tests', function() {
|
|||
});
|
||||
});
|
||||
describe('Download', function() {
|
||||
beforeEach(function() {
|
||||
fileList.$el.find('.actions-selected').click();
|
||||
});
|
||||
|
||||
it('Opens download URL when clicking "Download"', function() {
|
||||
$('.selectedActions .download').click();
|
||||
$('.selectedActions .filesSelectMenu .download').click();
|
||||
expect(redirectStub.calledOnce).toEqual(true);
|
||||
expect(redirectStub.getCall(0).args[0]).toContain(OC.webroot + '/index.php/apps/files/ajax/download.php?dir=%2Fsubdir&files=%5B%22One.txt%22%2C%22Three.pdf%22%2C%22somedir%22%5D');
|
||||
redirectStub.restore();
|
||||
|
@ -2228,28 +2245,37 @@ describe('OCA.Files.FileList tests', function() {
|
|||
it('Downloads root folder when all selected in root folder', function() {
|
||||
$('#dir').val('/');
|
||||
$('.select-all').click();
|
||||
$('.selectedActions .download').click();
|
||||
$('.selectedActions .filesSelectMenu .download').click();
|
||||
expect(redirectStub.calledOnce).toEqual(true);
|
||||
expect(redirectStub.getCall(0).args[0]).toContain(OC.webroot + '/index.php/apps/files/ajax/download.php?dir=%2F&files=');
|
||||
});
|
||||
it('Downloads parent folder when all selected in subfolder', function() {
|
||||
$('.select-all').click();
|
||||
$('.selectedActions .download').click();
|
||||
$('.selectedActions .filesSelectMenu .download').click();
|
||||
expect(redirectStub.calledOnce).toEqual(true);
|
||||
expect(redirectStub.getCall(0).args[0]).toContain(OC.webroot + '/index.php/apps/files/ajax/download.php?dir=%2F&files=subdir');
|
||||
});
|
||||
|
||||
afterEach(function() {
|
||||
fileList.$el.find('.actions-selected').click();
|
||||
});
|
||||
});
|
||||
|
||||
describe('Delete', function() {
|
||||
var deleteStub, deferredDelete;
|
||||
beforeEach(function() {
|
||||
deferredDelete = $.Deferred();
|
||||
deleteStub = sinon.stub(filesClient, 'remove').returns(deferredDelete.promise());
|
||||
fileList.$el.find('.actions-selected').click();
|
||||
});
|
||||
|
||||
afterEach(function() {
|
||||
fileList.$el.find('.actions-selected').click();
|
||||
deleteStub.restore();
|
||||
});
|
||||
|
||||
it('Deletes selected files when "Delete" clicked', function() {
|
||||
$('.selectedActions .delete-selected').click();
|
||||
$('.selectedActions .filesSelectMenu .delete').click();
|
||||
|
||||
expect(deleteStub.callCount).toEqual(3);
|
||||
expect(deleteStub.getCall(0).args[0]).toEqual('/subdir/One.txt');
|
||||
|
@ -2265,7 +2291,7 @@ describe('OCA.Files.FileList tests', function() {
|
|||
});
|
||||
it('Deletes all files when all selected when "Delete" clicked', function() {
|
||||
$('.select-all').click();
|
||||
$('.selectedActions .delete-selected').click();
|
||||
$('.selectedActions .filesSelectMenu .delete').click();
|
||||
|
||||
expect(deleteStub.callCount).toEqual(4);
|
||||
expect(deleteStub.getCall(0).args[0]).toEqual('/subdir/One.txt');
|
||||
|
|
|
@ -46,8 +46,8 @@ describe('OCA.Trashbin.FileList tests', function() {
|
|||
'<input type="checkbox" id="select_all_trash" class="select-all">' +
|
||||
'<span class="name">Name</span>' +
|
||||
'<span class="selectedActions hidden">' +
|
||||
'<a href class="undelete">Restore</a>' +
|
||||
'<a href class="delete-selected">Delete</a></span>' +
|
||||
'<a href="" class="actions-selected"><span class="icon icon-more"></span><span>Actions</span>' +
|
||||
'</span>' +
|
||||
'</th></tr></thead>' +
|
||||
'<tbody id="fileList"></tbody>' +
|
||||
'<tfoot></tfoot>' +
|
||||
|
@ -90,7 +90,18 @@ describe('OCA.Trashbin.FileList tests', function() {
|
|||
var fileActions = OCA.Trashbin.App._createFileActions(fileList);
|
||||
fileList = new OCA.Trashbin.FileList(
|
||||
$('#app-content-trashbin'), {
|
||||
fileActions: fileActions
|
||||
fileActions: fileActions,
|
||||
multiSelectMenu: [{
|
||||
name: 'restore',
|
||||
displayName: t('files', 'Restore'),
|
||||
iconClass: 'icon-history',
|
||||
},
|
||||
{
|
||||
name: 'delete',
|
||||
displayName: t('files', 'Delete'),
|
||||
iconClass: 'icon-delete',
|
||||
}
|
||||
]
|
||||
}
|
||||
);
|
||||
});
|
||||
|
@ -260,33 +271,39 @@ describe('OCA.Trashbin.FileList tests', function() {
|
|||
fileList.findFileEl('One.txt.d11111').find('input:checkbox').click();
|
||||
fileList.findFileEl('Three.pdf.d33333').find('input:checkbox').click();
|
||||
fileList.findFileEl('somedir.d99999').find('input:checkbox').click();
|
||||
fileList.$el.find('.actions-selected').click();
|
||||
});
|
||||
|
||||
afterEach(function() {
|
||||
fileList.$el.find('.actions-selected').click();
|
||||
});
|
||||
|
||||
describe('Delete', function() {
|
||||
it('Shows trashbin actions', function() {
|
||||
// visible because a few files were selected
|
||||
expect($('.selectedActions').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .delete-selected').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .undelete').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .item-delete').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .item-restore').is(':visible')).toEqual(true);
|
||||
|
||||
// check
|
||||
fileList.$el.find('.select-all').click();
|
||||
|
||||
// stays visible
|
||||
expect($('.selectedActions').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .delete-selected').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .undelete').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .item-delete').is(':visible')).toEqual(true);
|
||||
expect($('.selectedActions .item-restore').is(':visible')).toEqual(true);
|
||||
|
||||
// uncheck
|
||||
fileList.$el.find('.select-all').click();
|
||||
|
||||
// becomes hidden now
|
||||
expect($('.selectedActions').is(':visible')).toEqual(false);
|
||||
expect($('.selectedActions .delete-selected').is(':visible')).toEqual(false);
|
||||
expect($('.selectedActions .undelete').is(':visible')).toEqual(false);
|
||||
expect($('.selectedActions .item-delete').is(':visible')).toEqual(false);
|
||||
expect($('.selectedActions .item-restore').is(':visible')).toEqual(false);
|
||||
});
|
||||
it('Deletes selected files when "Delete" clicked', function() {
|
||||
var request;
|
||||
$('.selectedActions .delete-selected').click();
|
||||
$('.selectedActions .filesSelectMenu .delete').click();
|
||||
expect(fakeServer.requests.length).toEqual(1);
|
||||
request = fakeServer.requests[0];
|
||||
expect(request.url).toEqual(OC.webroot + '/index.php/apps/files_trashbin/ajax/delete.php');
|
||||
|
@ -314,7 +331,7 @@ describe('OCA.Trashbin.FileList tests', function() {
|
|||
it('Deletes all files when all selected when "Delete" clicked', function() {
|
||||
var request;
|
||||
$('.select-all').click();
|
||||
$('.selectedActions .delete-selected').click();
|
||||
$('.selectedActions .filesSelectMenu .delete').click();
|
||||
expect(fakeServer.requests.length).toEqual(1);
|
||||
request = fakeServer.requests[0];
|
||||
expect(request.url).toEqual(OC.webroot + '/index.php/apps/files_trashbin/ajax/delete.php');
|
||||
|
@ -331,7 +348,7 @@ describe('OCA.Trashbin.FileList tests', function() {
|
|||
describe('Restore', function() {
|
||||
it('Restores selected files when "Restore" clicked', function() {
|
||||
var request;
|
||||
$('.selectedActions .undelete').click();
|
||||
$('.selectedActions .filesSelectMenu .restore').click();
|
||||
expect(fakeServer.requests.length).toEqual(1);
|
||||
request = fakeServer.requests[0];
|
||||
expect(request.url).toEqual(OC.webroot + '/index.php/apps/files_trashbin/ajax/undelete.php');
|
||||
|
@ -359,7 +376,7 @@ describe('OCA.Trashbin.FileList tests', function() {
|
|||
it('Restores all files when all selected when "Restore" clicked', function() {
|
||||
var request;
|
||||
$('.select-all').click();
|
||||
$('.selectedActions .undelete').click();
|
||||
$('.selectedActions .filesSelectMenu .restore').click();
|
||||
expect(fakeServer.requests.length).toEqual(1);
|
||||
request = fakeServer.requests[0];
|
||||
expect(request.url).toEqual(OC.webroot + '/index.php/apps/files_trashbin/ajax/undelete.php');
|
||||
|
|
Loading…
Reference in New Issue