Skip to content

Commit 7931b6e

Browse files
committed
Cypress test for Tasks
1 parent 39dcef7 commit 7931b6e

File tree

4 files changed

+61
-5
lines changed

4 files changed

+61
-5
lines changed

cypress/e2e/task-create.cy.js

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
const testTaskScript = `// mode=local,language=javascript,parameters=[greetee]
2+
"Hello " + greetee`
3+
4+
const updatedScript = `// mode=local,language=javascript,parameters=[greetee]
5+
"Good morning " + greetee`
6+
7+
describe('Tasks', () => {
8+
beforeEach(() => {
9+
cy.login(Cypress.env('username'), Cypress.env('password'));
10+
});
11+
12+
it('successfully navigates through tasks', () => {
13+
cy.get('a[aria-label="nav-item-Tasks"]').click();
14+
cy.contains('hello');
15+
});
16+
17+
it('successfully creates tasks', () => {
18+
cy.get('a[aria-label="nav-item-Tasks"]').click();
19+
cy.get('button[aria-label="create-task-button"]').click();
20+
cy.get('#task-name').click().type('testTask');
21+
cy.get('.pf-c-code-editor').click().type(testTaskScript)
22+
cy.get('[data-cy="add-task-button"]').click();
23+
cy.contains('Task testTask has been created');
24+
cy.get('.pf-c-alert__action > .pf-c-button').click(); //Closing alert popup.
25+
cy.contains('testTask');
26+
});
27+
28+
it('successfully execute a task', () => {
29+
cy.get('a[aria-label="nav-item-Tasks"]').click();
30+
cy.contains('testTask').click();
31+
cy.get('button[aria-label="expand-task-testTask"]').click({ force: true });
32+
cy.get('button[aria-label="execute-button-testTask"]').click();
33+
cy.get('input[aria-label="input-parameter"]').click().type('world');
34+
cy.get('button[aria-label="Confirm"]').click();
35+
cy.contains('The script has been successfully executed');
36+
cy.get('.pf-c-alert__action > .pf-c-button').click(); //Closing alert popup.
37+
})
38+
39+
it('successfully update a task', () => {
40+
cy.get('a[aria-label="nav-item-Tasks"]').click();
41+
cy.contains('testTask').click();
42+
cy.get('button[aria-label="expand-task-testTask"]').click({ force: true });
43+
cy.get('button[aria-label="edit-button-testTask"]').click();
44+
cy.get('[data-cy=taskEditArea]').type('{selectall}', { timeout: 10000 });
45+
cy.get('[data-cy="taskEditArea"]').click().type(updatedScript);
46+
cy.get('button[aria-label="edit-button-testTask"]').click();
47+
cy.contains('Task testTask has been updated');
48+
cy.get('.pf-c-alert__action > .pf-c-button').click(); //Closing alert popup.
49+
cy.contains('testTask');
50+
cy.contains('"Good morning " + greetee');
51+
})
52+
});

src/app/CacheManagers/CacheManagers.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ const CacheManagers = () => {
7171
{ name: t('cache-managers.counters-tab'), count: countersCount, key: '1' }
7272
];
7373

74-
if (ConsoleServices.security().hasConsoleACL(ConsoleACL.BULK_READ, connectedUser)) {
74+
if (ConsoleServices.security().hasConsoleACL(ConsoleACL.EXEC, connectedUser)) {
7575
tabs.push({ name: t('cache-managers.tasks-tab'), count: tasksCount, key: '2' });
7676
}
7777

src/app/CacheManagers/TasksTableDisplay.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,9 +155,9 @@ const TasksTableDisplay = (props: { setTasksCount: (number) => void; isVisible:
155155
<ToolbarItem>
156156
<Button
157157
isDisabled={editTaskName == taskName.name && editScript.length == 0}
158-
id={'edit-button' + taskName.name}
159-
name={'edit-button' + taskName.name}
160-
aria-label={'edit-button' + taskName.name}
158+
id={'edit-button-' + taskName.name}
159+
name={'edit-button-' + taskName.name}
160+
aria-label={'edit-button-' + taskName.name}
161161
variant={ButtonVariant.secondary}
162162
onClick={() => handleEdit(taskName.name)}
163163
>

src/services/securityService.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ export enum ConsoleACL {
99
BULK_READ = 'BULK_READ',
1010
BULK_WRITE = 'BULK_WRITE',
1111
CREATE = 'CREATE',
12-
ADMIN = 'ADMIN'
12+
ADMIN = 'ADMIN',
13+
EXEC = 'EXEC'
1314
}
1415

1516
export enum ACL {
@@ -136,6 +137,9 @@ export class SecurityService {
136137
case ConsoleACL.CREATE:
137138
hasAcl = aclList.includes(ACL.CREATE);
138139
break;
140+
case ConsoleACL.EXEC:
141+
hasAcl = aclList.includes(ACL.EXEC);
142+
break;
139143
}
140144
return hasAcl;
141145
}

0 commit comments

Comments
 (0)