1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
import { Then, When } from 'cypress-cucumber-preprocessor/steps';
import 'cypress-iframe';
function getIframe() {
cy.frameLoaded('#iframe');
return cy.iframe();
}
Then('I should see the grafana panel {string}', (panels: string) => {
getIframe().within(() => {
for (const panel of panels.split(', ')) {
cy.get('.grafana-app')
.wait(100)
.within(() => {
cy.get(`[aria-label="${panel} panel"]`).should('be.visible');
});
}
});
});
When('I view the grafana panel {string}', (panels: string) => {
getIframe().within(() => {
for (const panel of panels.split(', ')) {
cy.get('.grafana-app')
.wait(100)
.within(() => {
cy.get(`[aria-label="${panel} panel"]`).within(() => {
cy.get('h2').click();
});
cy.get('[aria-label="Panel header item View"]').click();
});
}
});
});
Then('I should not see {string} in the panel {string}', (value: string, panels: string) => {
getIframe().within(() => {
for (const panel of panels.split(', ')) {
cy.get('.grafana-app')
.wait(100)
.within(() => {
cy.get(`[aria-label="${panel} panel"]`)
.should('be.visible')
.within(() => {
cy.get('span').first().should('not.have.text', value);
});
});
}
});
});
Then(
'I should see the legends {string} in the graph {string}',
(legends: string, panels: string) => {
getIframe().within(() => {
for (const panel of panels.split(', ')) {
cy.get('.grafana-app')
.wait(100)
.within(() => {
cy.get(`[aria-label="${panel} panel"]`)
.should('be.visible')
.within(() => {
for (const legend of legends.split(', ')) {
cy.get(`button`).contains(legend);
}
});
});
}
});
}
);
Then('I should not see No Data in the graph {string}', (panels: string) => {
getIframe().within(() => {
for (const panel of panels.split(', ')) {
cy.get('.grafana-app')
.wait(100)
.within(() => {
cy.get(`[aria-label="${panel} panel"]`)
.should('be.visible')
.within(() => {
cy.get('div.datapoints-warning').should('not.exist');
});
});
}
});
});
|