@centreon/js-config 24.4.28 → 24.4.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cypress/component/commands.tsx +17 -58
- package/cypress/component/configuration.js +2 -15
- package/cypress/e2e/commands/configuration.ts +0 -324
- package/cypress/e2e/commands.ts +149 -460
- package/cypress/e2e/configuration.ts +7 -14
- package/cypress/e2e/plugins.ts +1 -1
- package/cypress/e2e/tasks.ts +53 -206
- package/jest/index.js +1 -0
- package/package.json +57 -64
- package/webpack/base/globalConfig.js +2 -7
- package/webpack/base/index.js +6 -6
- package/cypress/component/excludeNodeModulesFromCoverage.js +0 -36
- package/tsconfig/lambda/node20.tsconfig.json +0 -12
|
@@ -18,15 +18,6 @@ interface MountProps {
|
|
|
18
18
|
Component: React.ReactNode;
|
|
19
19
|
options?: object;
|
|
20
20
|
}
|
|
21
|
-
interface Resolution {
|
|
22
|
-
height: number;
|
|
23
|
-
width: number;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
interface MakeSnapshotWithCustomResolution {
|
|
27
|
-
resolution: Resolution;
|
|
28
|
-
title: string;
|
|
29
|
-
}
|
|
30
21
|
|
|
31
22
|
export enum Method {
|
|
32
23
|
DELETE = 'DELETE',
|
|
@@ -62,7 +53,6 @@ interface Query {
|
|
|
62
53
|
|
|
63
54
|
export interface InterceptAPIRequestProps<T> {
|
|
64
55
|
alias: string;
|
|
65
|
-
delay?: number;
|
|
66
56
|
method: Method;
|
|
67
57
|
path: string;
|
|
68
58
|
query?: Query;
|
|
@@ -78,8 +68,7 @@ Cypress.Commands.add(
|
|
|
78
68
|
response,
|
|
79
69
|
alias,
|
|
80
70
|
query,
|
|
81
|
-
statusCode = 200
|
|
82
|
-
delay = 500
|
|
71
|
+
statusCode = 200
|
|
83
72
|
}: InterceptAPIRequestProps<T>): void => {
|
|
84
73
|
cy.interceptRequest(
|
|
85
74
|
method,
|
|
@@ -88,14 +77,14 @@ Cypress.Commands.add(
|
|
|
88
77
|
const getQuery = req?.url?.searchParams?.get(query?.name);
|
|
89
78
|
if (query && equals(query.value, getQuery)) {
|
|
90
79
|
return res(
|
|
91
|
-
ctx.delay(
|
|
80
|
+
ctx.delay(500),
|
|
92
81
|
ctx.json(response),
|
|
93
82
|
ctx.status(statusCode)
|
|
94
83
|
);
|
|
95
84
|
}
|
|
96
85
|
if (!getQuery && isNil(query)) {
|
|
97
86
|
return res(
|
|
98
|
-
ctx.delay(
|
|
87
|
+
ctx.delay(500),
|
|
99
88
|
ctx.json(response),
|
|
100
89
|
ctx.status(statusCode)
|
|
101
90
|
);
|
|
@@ -108,32 +97,20 @@ Cypress.Commands.add(
|
|
|
108
97
|
}
|
|
109
98
|
);
|
|
110
99
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
element: Cypress.Chainable<JQuery<HTMLElement>>;
|
|
114
|
-
times?: number;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
Cypress.Commands.add(
|
|
118
|
-
'moveSortableElement',
|
|
119
|
-
({ element, direction, times = 1 }: MoveSortableElementProps): void => {
|
|
120
|
-
const key = `{${direction}arrow}`;
|
|
121
|
-
|
|
122
|
-
element.type(' ', {
|
|
123
|
-
force: true,
|
|
124
|
-
scrollBehavior: false
|
|
125
|
-
});
|
|
100
|
+
Cypress.Commands.add('moveSortableElement', ({ element, direction }): void => {
|
|
101
|
+
const key = `{${direction}arrow}`;
|
|
126
102
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
);
|
|
103
|
+
element.type(' ', {
|
|
104
|
+
force: true,
|
|
105
|
+
scrollBehavior: false
|
|
106
|
+
});
|
|
107
|
+
element.eq(-1).type(key, {
|
|
108
|
+
scrollBehavior: false
|
|
109
|
+
});
|
|
110
|
+
element.eq(-1).type(' ', {
|
|
111
|
+
scrollBehavior: false
|
|
112
|
+
});
|
|
113
|
+
});
|
|
137
114
|
|
|
138
115
|
Cypress.Commands.add(
|
|
139
116
|
'moveSortableElementUsingAriaLabel',
|
|
@@ -160,15 +137,6 @@ Cypress.Commands.add('makeSnapshot', (title?: string) => {
|
|
|
160
137
|
cy.matchImageSnapshot(title);
|
|
161
138
|
});
|
|
162
139
|
|
|
163
|
-
Cypress.Commands.add(
|
|
164
|
-
'makeSnapshotWithCustomResolution',
|
|
165
|
-
({ title, resolution }: MakeSnapshotWithCustomResolution) => {
|
|
166
|
-
const { width, height } = resolution;
|
|
167
|
-
cy.viewport(width, height);
|
|
168
|
-
cy.matchImageSnapshot(title);
|
|
169
|
-
}
|
|
170
|
-
);
|
|
171
|
-
|
|
172
140
|
Cypress.Commands.add('cssDisableMotion', (): void => {
|
|
173
141
|
Cypress.on('window:before:load', (cyWindow) => {
|
|
174
142
|
disableMotion(cyWindow);
|
|
@@ -180,22 +148,13 @@ declare global {
|
|
|
180
148
|
interface Chainable {
|
|
181
149
|
adjustViewport: () => Cypress.Chainable;
|
|
182
150
|
cssDisableMotion: () => Cypress.Chainable;
|
|
183
|
-
getRequestCalls: (alias) => Cypress.Chainable;
|
|
184
151
|
interceptAPIRequest: <T extends object>(
|
|
185
152
|
props: InterceptAPIRequestProps<T>
|
|
186
153
|
) => Cypress.Chainable;
|
|
187
154
|
interceptRequest: (method, path, mock, alias) => Cypress.Chainable;
|
|
188
155
|
makeSnapshot: (title?: string) => void;
|
|
189
|
-
makeSnapshotWithCustomResolution: ({
|
|
190
|
-
title,
|
|
191
|
-
resolution
|
|
192
|
-
}: MakeSnapshotWithCustomResolution) => Cypress.Chainable;
|
|
193
156
|
mount: ({ Component, options }: MountProps) => Cypress.Chainable;
|
|
194
|
-
moveSortableElement: ({
|
|
195
|
-
element,
|
|
196
|
-
direction,
|
|
197
|
-
times
|
|
198
|
-
}: MoveSortableElementProps) => void;
|
|
157
|
+
moveSortableElement: ({ element, direction }) => void;
|
|
199
158
|
moveSortableElementUsingAriaLabel: ({ ariaLabel, direction }) => void;
|
|
200
159
|
waitForRequest: (alias) => Cypress.Chainable;
|
|
201
160
|
}
|
|
@@ -3,7 +3,6 @@ const { defineConfig } = require('cypress');
|
|
|
3
3
|
const {
|
|
4
4
|
addMatchImageSnapshotPlugin
|
|
5
5
|
} = require('@simonsmith/cypress-image-snapshot/plugin');
|
|
6
|
-
const cypressCodeCoverageTask = require('@cypress/code-coverage/task');
|
|
7
6
|
|
|
8
7
|
module.exports = ({
|
|
9
8
|
webpackConfig,
|
|
@@ -26,12 +25,9 @@ module.exports = ({
|
|
|
26
25
|
setupNodeEvents: (on, config) => {
|
|
27
26
|
addMatchImageSnapshotPlugin(on, config);
|
|
28
27
|
|
|
29
|
-
cypressCodeCoverageTask(on, config);
|
|
30
|
-
|
|
31
28
|
on('before:browser:launch', (browser, launchOptions) => {
|
|
32
29
|
if (browser.name === 'chrome' && browser.isHeadless) {
|
|
33
30
|
launchOptions.args.push('--headless=new');
|
|
34
|
-
launchOptions.args.push('--force-color-profile=srgb');
|
|
35
31
|
}
|
|
36
32
|
|
|
37
33
|
return launchOptions;
|
|
@@ -41,17 +37,8 @@ module.exports = ({
|
|
|
41
37
|
supportFile: `${mainCypressFolder}/support/component.tsx`
|
|
42
38
|
},
|
|
43
39
|
env: {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
exclude: [
|
|
47
|
-
'cypress/**/*.*',
|
|
48
|
-
'packages/**',
|
|
49
|
-
'node_modules',
|
|
50
|
-
'**/*.js',
|
|
51
|
-
'**/*.spec.tsx'
|
|
52
|
-
]
|
|
53
|
-
},
|
|
54
|
-
...env
|
|
40
|
+
...env,
|
|
41
|
+
baseUrl: 'http://localhost:9092'
|
|
55
42
|
},
|
|
56
43
|
reporter: 'mochawesome',
|
|
57
44
|
reporterOptions: {
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-namespace */
|
|
2
2
|
|
|
3
|
-
import { Action } from 'e2e/features/ACLs/commands';
|
|
4
|
-
|
|
5
3
|
const apiBase = '/centreon/api';
|
|
6
4
|
const apiActionV1 = `${apiBase}/index.php`;
|
|
7
5
|
|
|
@@ -140,102 +138,6 @@ Cypress.Commands.add(
|
|
|
140
138
|
}
|
|
141
139
|
);
|
|
142
140
|
|
|
143
|
-
interface Contact {
|
|
144
|
-
admin?: boolean;
|
|
145
|
-
alias?: string | null;
|
|
146
|
-
authenticationType?: 'local' | 'ldap';
|
|
147
|
-
email: string;
|
|
148
|
-
enableNotifications?: boolean;
|
|
149
|
-
GUIAccess?: boolean;
|
|
150
|
-
language?: string;
|
|
151
|
-
name: string;
|
|
152
|
-
password: string;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
Cypress.Commands.add(
|
|
156
|
-
'addContact',
|
|
157
|
-
({
|
|
158
|
-
admin = true,
|
|
159
|
-
alias = null,
|
|
160
|
-
authenticationType = 'local',
|
|
161
|
-
email,
|
|
162
|
-
enableNotifications = true,
|
|
163
|
-
GUIAccess = true,
|
|
164
|
-
language = 'en_US',
|
|
165
|
-
name,
|
|
166
|
-
password
|
|
167
|
-
}: Contact): Cypress.Chainable => {
|
|
168
|
-
const contactAdmin = admin ? 1 : 0;
|
|
169
|
-
const contactAlias = alias === null ? name : alias;
|
|
170
|
-
const contactEnableNotifications = enableNotifications ? 1 : 0;
|
|
171
|
-
const contactGUIAccess = GUIAccess ? 1 : 0;
|
|
172
|
-
|
|
173
|
-
return cy
|
|
174
|
-
.executeActionViaClapi({
|
|
175
|
-
bodyContent: {
|
|
176
|
-
action: 'ADD',
|
|
177
|
-
object: 'CONTACT',
|
|
178
|
-
values: `${name};${contactAlias};${email};${password};${contactAdmin};${contactGUIAccess};${language};${authenticationType}`
|
|
179
|
-
}
|
|
180
|
-
})
|
|
181
|
-
.then(() => {
|
|
182
|
-
const contactParams = {
|
|
183
|
-
enable_notifications: contactEnableNotifications
|
|
184
|
-
};
|
|
185
|
-
Object.entries(contactParams).map(([paramName, paramValue]) => {
|
|
186
|
-
if (paramValue === null) {
|
|
187
|
-
return null;
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
return cy.executeActionViaClapi({
|
|
191
|
-
bodyContent: {
|
|
192
|
-
action: 'SETPARAM',
|
|
193
|
-
object: 'CONTACT',
|
|
194
|
-
values: `${name};${paramName};${paramValue}`
|
|
195
|
-
}
|
|
196
|
-
});
|
|
197
|
-
});
|
|
198
|
-
|
|
199
|
-
return cy.wrap(null);
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
|
-
);
|
|
203
|
-
|
|
204
|
-
interface ContactGroup {
|
|
205
|
-
alias?: string | null;
|
|
206
|
-
contacts: string[];
|
|
207
|
-
name: string;
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
Cypress.Commands.add(
|
|
211
|
-
'addContactGroup',
|
|
212
|
-
({ alias = null, contacts, name }: ContactGroup): Cypress.Chainable => {
|
|
213
|
-
const contactGroupAlias = alias === null ? name : alias;
|
|
214
|
-
|
|
215
|
-
return cy
|
|
216
|
-
.executeActionViaClapi({
|
|
217
|
-
bodyContent: {
|
|
218
|
-
action: 'ADD',
|
|
219
|
-
object: 'CG',
|
|
220
|
-
values: `${name};${contactGroupAlias}`
|
|
221
|
-
}
|
|
222
|
-
})
|
|
223
|
-
.then(() => {
|
|
224
|
-
contacts.map((contact) => {
|
|
225
|
-
return cy.executeActionViaClapi({
|
|
226
|
-
bodyContent: {
|
|
227
|
-
action: 'ADDCONTACT',
|
|
228
|
-
object: 'CG',
|
|
229
|
-
values: `${name};${contact}`
|
|
230
|
-
}
|
|
231
|
-
});
|
|
232
|
-
});
|
|
233
|
-
|
|
234
|
-
return cy.wrap(null);
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
);
|
|
238
|
-
|
|
239
141
|
interface Host {
|
|
240
142
|
activeCheckEnabled?: boolean;
|
|
241
143
|
address?: string;
|
|
@@ -306,26 +208,6 @@ Cypress.Commands.add(
|
|
|
306
208
|
}
|
|
307
209
|
);
|
|
308
210
|
|
|
309
|
-
interface HostGroup {
|
|
310
|
-
alias?: string | null;
|
|
311
|
-
name: string;
|
|
312
|
-
}
|
|
313
|
-
|
|
314
|
-
Cypress.Commands.add(
|
|
315
|
-
'addHostGroup',
|
|
316
|
-
({ alias = null, name }: HostGroup): Cypress.Chainable => {
|
|
317
|
-
const hostGroupAlias = alias === null ? name : alias;
|
|
318
|
-
|
|
319
|
-
return cy.executeActionViaClapi({
|
|
320
|
-
bodyContent: {
|
|
321
|
-
action: 'ADD',
|
|
322
|
-
object: 'HG',
|
|
323
|
-
values: `${name};${hostGroupAlias}`
|
|
324
|
-
}
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
);
|
|
328
|
-
|
|
329
211
|
interface ServiceTemplate {
|
|
330
212
|
activeCheckEnabled?: boolean;
|
|
331
213
|
checkCommand?: string | null;
|
|
@@ -447,45 +329,6 @@ Cypress.Commands.add(
|
|
|
447
329
|
}
|
|
448
330
|
);
|
|
449
331
|
|
|
450
|
-
interface ServiceGroup {
|
|
451
|
-
alias?: string | null;
|
|
452
|
-
hostsAndServices: string[][];
|
|
453
|
-
name: string;
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
Cypress.Commands.add(
|
|
457
|
-
'addServiceGroup',
|
|
458
|
-
({
|
|
459
|
-
alias = null,
|
|
460
|
-
hostsAndServices,
|
|
461
|
-
name
|
|
462
|
-
}: ServiceGroup): Cypress.Chainable => {
|
|
463
|
-
const serviceGroupAlias = alias === null ? name : alias;
|
|
464
|
-
|
|
465
|
-
return cy
|
|
466
|
-
.executeActionViaClapi({
|
|
467
|
-
bodyContent: {
|
|
468
|
-
action: 'ADD',
|
|
469
|
-
object: 'SG',
|
|
470
|
-
values: `${name};${serviceGroupAlias}`
|
|
471
|
-
}
|
|
472
|
-
})
|
|
473
|
-
.then(() => {
|
|
474
|
-
hostsAndServices.map((hostAndService) => {
|
|
475
|
-
return cy.executeActionViaClapi({
|
|
476
|
-
bodyContent: {
|
|
477
|
-
action: 'ADDSERVICE',
|
|
478
|
-
object: 'SG',
|
|
479
|
-
values: `${name};${hostAndService[0]},${hostAndService[1]}`
|
|
480
|
-
}
|
|
481
|
-
});
|
|
482
|
-
});
|
|
483
|
-
|
|
484
|
-
return cy.wrap(null);
|
|
485
|
-
});
|
|
486
|
-
}
|
|
487
|
-
);
|
|
488
|
-
|
|
489
332
|
Cypress.Commands.add(
|
|
490
333
|
'applyPollerConfiguration',
|
|
491
334
|
(pollerName = 'Central'): Cypress.Chainable => {
|
|
@@ -498,179 +341,12 @@ Cypress.Commands.add(
|
|
|
498
341
|
}
|
|
499
342
|
);
|
|
500
343
|
|
|
501
|
-
interface ACLGroup {
|
|
502
|
-
alias?: string | null;
|
|
503
|
-
contacts?: string[];
|
|
504
|
-
contactGroups?: string[];
|
|
505
|
-
name: string;
|
|
506
|
-
}
|
|
507
|
-
|
|
508
|
-
Cypress.Commands.add(
|
|
509
|
-
'addACLGroup',
|
|
510
|
-
({
|
|
511
|
-
alias = null,
|
|
512
|
-
contacts = [],
|
|
513
|
-
contactGroups = [],
|
|
514
|
-
name
|
|
515
|
-
}: ACLGroup): Cypress.Chainable => {
|
|
516
|
-
const ACLGroupALias = alias === null ? name : alias;
|
|
517
|
-
|
|
518
|
-
return cy
|
|
519
|
-
.executeActionViaClapi({
|
|
520
|
-
bodyContent: {
|
|
521
|
-
action: 'ADD',
|
|
522
|
-
object: 'ACLGROUP',
|
|
523
|
-
values: `${name};${ACLGroupALias}`
|
|
524
|
-
}
|
|
525
|
-
})
|
|
526
|
-
.then(() => {
|
|
527
|
-
if (contacts) {
|
|
528
|
-
contacts.map((contact) => {
|
|
529
|
-
cy.executeActionViaClapi({
|
|
530
|
-
bodyContent: {
|
|
531
|
-
action: 'ADDCONTACT',
|
|
532
|
-
object: 'ACLGROUP',
|
|
533
|
-
values: `${name};${contact}`
|
|
534
|
-
}
|
|
535
|
-
});
|
|
536
|
-
});
|
|
537
|
-
}
|
|
538
|
-
if (contactGroups) {
|
|
539
|
-
contactGroups.map((contactGroup) => {
|
|
540
|
-
cy.executeActionViaClapi({
|
|
541
|
-
bodyContent: {
|
|
542
|
-
action: 'ADDCONTACTGROUP',
|
|
543
|
-
object: 'ACLGROUP',
|
|
544
|
-
values: `${name};${contactGroup}`
|
|
545
|
-
}
|
|
546
|
-
});
|
|
547
|
-
});
|
|
548
|
-
}
|
|
549
|
-
});
|
|
550
|
-
}
|
|
551
|
-
);
|
|
552
|
-
|
|
553
|
-
interface ACLMenu {
|
|
554
|
-
name: string;
|
|
555
|
-
rule?: string[];
|
|
556
|
-
alias?: string | null;
|
|
557
|
-
includeChildren?: boolean;
|
|
558
|
-
readOnly?: boolean;
|
|
559
|
-
}
|
|
560
|
-
|
|
561
|
-
Cypress.Commands.add(
|
|
562
|
-
'addACLMenu',
|
|
563
|
-
({
|
|
564
|
-
name,
|
|
565
|
-
rule = [],
|
|
566
|
-
alias = null,
|
|
567
|
-
includeChildren = true,
|
|
568
|
-
readOnly = false
|
|
569
|
-
}: ACLMenu): Cypress.Chainable => {
|
|
570
|
-
const ACLMenuAlias = alias === null ? name : alias;
|
|
571
|
-
const action = readOnly ? 'GRANTRO' : 'GRANTRW';
|
|
572
|
-
const children = includeChildren ? '1' : '0';
|
|
573
|
-
|
|
574
|
-
return cy
|
|
575
|
-
.executeActionViaClapi({
|
|
576
|
-
bodyContent: {
|
|
577
|
-
action: 'ADD',
|
|
578
|
-
object: 'ACLMENU',
|
|
579
|
-
values: `${name};${ACLMenuAlias}`
|
|
580
|
-
}
|
|
581
|
-
})
|
|
582
|
-
.then(() => {
|
|
583
|
-
if (rule.length == 0) {
|
|
584
|
-
return cy.wrap(null);
|
|
585
|
-
}
|
|
586
|
-
|
|
587
|
-
let ruleCommand = '';
|
|
588
|
-
rule.map((rulePage, index) => {
|
|
589
|
-
ruleCommand += rulePage + (index == rule.length - 1 ? '' : ';');
|
|
590
|
-
});
|
|
591
|
-
cy.executeActionViaClapi({
|
|
592
|
-
bodyContent: {
|
|
593
|
-
action: action,
|
|
594
|
-
object: 'ACLMENU',
|
|
595
|
-
values: `${name};${children};${ruleCommand}`
|
|
596
|
-
}
|
|
597
|
-
});
|
|
598
|
-
return cy.wrap(null);
|
|
599
|
-
});
|
|
600
|
-
}
|
|
601
|
-
);
|
|
602
|
-
|
|
603
|
-
interface ACLAction {
|
|
604
|
-
name: string;
|
|
605
|
-
description: string;
|
|
606
|
-
actions?: Action[];
|
|
607
|
-
}
|
|
608
|
-
|
|
609
|
-
Cypress.Commands.add(
|
|
610
|
-
'addACLAction',
|
|
611
|
-
({ name, description, actions = [] }: ACLAction): Cypress.Chainable => {
|
|
612
|
-
return cy
|
|
613
|
-
.executeActionViaClapi({
|
|
614
|
-
bodyContent: {
|
|
615
|
-
action: 'ADD',
|
|
616
|
-
object: 'ACLACTION',
|
|
617
|
-
values: `${name};${description}`
|
|
618
|
-
}
|
|
619
|
-
})
|
|
620
|
-
.then(() => {
|
|
621
|
-
if (actions.length == 0) {
|
|
622
|
-
return cy.wrap(null);
|
|
623
|
-
}
|
|
624
|
-
|
|
625
|
-
let actionCommand = '';
|
|
626
|
-
actions.map((action, index) => {
|
|
627
|
-
actionCommand += action + (index == actions.length - 1 ? '' : '|');
|
|
628
|
-
});
|
|
629
|
-
cy.executeActionViaClapi({
|
|
630
|
-
bodyContent: {
|
|
631
|
-
action: 'GRANT',
|
|
632
|
-
object: 'ACLACTION',
|
|
633
|
-
values: `${name};${actionCommand}`
|
|
634
|
-
}
|
|
635
|
-
});
|
|
636
|
-
return cy.wrap(null);
|
|
637
|
-
});
|
|
638
|
-
}
|
|
639
|
-
);
|
|
640
|
-
|
|
641
|
-
interface ACLResource {
|
|
642
|
-
name: string;
|
|
643
|
-
alias?: string | null;
|
|
644
|
-
}
|
|
645
|
-
|
|
646
|
-
Cypress.Commands.add(
|
|
647
|
-
'addACLResource',
|
|
648
|
-
({ name, alias = null }: ACLResource): Cypress.Chainable => {
|
|
649
|
-
const ACLResourcesAlias = alias === null ? name : alias;
|
|
650
|
-
return cy.executeActionViaClapi({
|
|
651
|
-
bodyContent: {
|
|
652
|
-
action: 'ADD',
|
|
653
|
-
object: 'ACLRESOURCE',
|
|
654
|
-
values: `${name};${ACLResourcesAlias}`
|
|
655
|
-
}
|
|
656
|
-
});
|
|
657
|
-
}
|
|
658
|
-
);
|
|
659
|
-
|
|
660
344
|
declare global {
|
|
661
345
|
namespace Cypress {
|
|
662
346
|
interface Chainable {
|
|
663
|
-
addACLAction: (props: ACLAction) => Cypress.Chainable;
|
|
664
|
-
addACLGroup: (props: ACLGroup) => Cypress.Chainable;
|
|
665
|
-
addACLMenu: (props: ACLMenu) => Cypress.Chainable;
|
|
666
|
-
addACLResource: (props: ACLResource) => Cypress.Chainable;
|
|
667
347
|
addCheckCommand: (props: CheckCommand) => Cypress.Chainable;
|
|
668
|
-
addContact: (props: Contact) => Cypress.Chainable;
|
|
669
|
-
addContactGroup: (props: ContactGroup) => Cypress.Chainable;
|
|
670
348
|
addHost: (props: Host) => Cypress.Chainable;
|
|
671
|
-
addHostGroup: (props: HostGroup) => Cypress.Chainable;
|
|
672
349
|
addService: (props: Service) => Cypress.Chainable;
|
|
673
|
-
addServiceGroup: (props: ServiceGroup) => Cypress.Chainable;
|
|
674
350
|
addServiceTemplate: (props: ServiceTemplate) => Cypress.Chainable;
|
|
675
351
|
addTimePeriod: (props: TimePeriod) => Cypress.Chainable;
|
|
676
352
|
applyPollerConfiguration: (props?: string) => Cypress.Chainable;
|