[ADF-551] allow setting sorting in html (#1857)

* allow setting sorting in html

* readme update

* update readme

* restore permissions code

* - Remove the check permission from the datatable and move inside the documentlist

* Remove commented test
This commit is contained in:
Denys Vuika
2017-05-10 15:43:38 +01:00
committed by Eugenio Romano
parent 416d8c2a1b
commit b0be88ec37
7 changed files with 216 additions and 120 deletions

View File

@@ -164,6 +164,166 @@ describe('DocumentList', () => {
expect(actions[0]).toBe(documentMenu);
});
it('should disable the action if there is no permission for the file and disableWithNoPermission true', () => {
let documentMenu = new ContentActionModel({
disableWithNoPermission: true,
permission: 'delete',
target: 'document',
title: 'FileAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFile: true, name: 'xyz', allowableOperations: ['create', 'update']}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FileAction');
expect(actions[0].disabled).toBe(true);
});
it('should disable the action if there is no permission for the folder and disableWithNoPermission true', () => {
let documentMenu = new ContentActionModel({
disableWithNoPermission: true,
permission: 'delete',
target: 'folder',
title: 'FolderAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFolder: true, name: 'xyz', allowableOperations: ['create', 'update']}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FolderAction');
expect(actions[0].disabled).toBe(true);
});
it('should not disable the action if there is no permission for the file and disableWithNoPermission false', () => {
let documentMenu = new ContentActionModel({
disableWithNoPermission: false,
permission: 'delete',
target: 'document',
title: 'FileAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFile: true, name: 'xyz', allowableOperations: ['create', 'update']}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FileAction');
expect(actions[0].disabled).toBeUndefined(true);
});
it('should not disable the action if there is no permission for the folder and disableWithNoPermission false', () => {
let documentMenu = new ContentActionModel({
disableWithNoPermission: false,
permission: 'delete',
target: 'folder',
title: 'FolderAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFolder: true, name: 'xyz', allowableOperations: ['create', 'update']}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FolderAction');
expect(actions[0].disabled).toBeUndefined(true);
});
it('should not disable the action if there is the right permission for the file', () => {
let documentMenu = new ContentActionModel({
disableWithNoPermission: true,
permission: 'delete',
target: 'document',
title: 'FileAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFile: true, name: 'xyz', allowableOperations: ['create', 'update', 'delete']}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FileAction');
expect(actions[0].disabled).toBeUndefined();
});
it('should not disable the action if there is the right permission for the folder', () => {
let documentMenu = new ContentActionModel({
disableWithNoPermission: true,
permission: 'delete',
target: 'folder',
title: 'FolderAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFolder: true, name: 'xyz', allowableOperations: ['create', 'update', 'delete']}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FolderAction');
expect(actions[0].disabled).toBeUndefined();
});
it('should not disable the action if there are no permissions for the file', () => {
let documentMenu = new ContentActionModel({
permission: 'delete',
target: 'document',
title: 'FileAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFile: true, name: 'xyz', allowableOperations: null}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FileAction');
expect(actions[0].disabled).toBeUndefined();
});
it('should not disable the action if there are no permissions for the folder', () => {
let documentMenu = new ContentActionModel({
permission: 'delete',
target: 'folder',
title: 'FolderAction'
});
documentList.actions = [
documentMenu
];
let nodeFile = {entry: {isFolder: true, name: 'xyz', allowableOperations: null}};
let actions = documentList.getNodeActions(nodeFile);
expect(actions.length).toBe(1);
expect(actions[0].title).toEqual('FolderAction');
expect(actions[0].disabled).toBeUndefined();
});
it('should find no content actions', () => {
let documentButton = new ContentActionModel();
documentButton.target = 'document';