2020-08-06 07:54:24 -05:00
|
|
|
import { e2e } from '@grafana/e2e';
|
|
|
|
|
|
|
|
e2e.scenario({
|
|
|
|
describeName: 'Dashboard templating',
|
|
|
|
itName: 'Verify variable interpolation works',
|
|
|
|
addScenarioDataSource: false,
|
|
|
|
addScenarioDashBoard: false,
|
|
|
|
skipScenario: false,
|
|
|
|
scenario: () => {
|
|
|
|
// Open dashboard global variables and interpolation
|
|
|
|
e2e.flows.openDashboard({ uid: 'HYaGDGIMk' });
|
|
|
|
|
|
|
|
const items: any = [];
|
|
|
|
const expectedItems: string[] = [
|
2020-08-13 07:38:27 -05:00
|
|
|
'__dashboard = Templating - Global variables and interpolation',
|
|
|
|
'__dashboard.name = Templating - Global variables and interpolation',
|
2020-08-06 07:54:24 -05:00
|
|
|
'__dashboard.uid = HYaGDGIMk',
|
|
|
|
'__org.name = Main Org.',
|
|
|
|
'__org.id = 1',
|
|
|
|
'__user.id = 1',
|
|
|
|
'__user.login = admin',
|
2020-11-05 08:26:08 -06:00
|
|
|
'__user.email = admin@localhost',
|
2020-08-06 07:54:24 -05:00
|
|
|
`Server:raw = A'A"A,BB\\B,CCC`,
|
|
|
|
`Server:regex = (A'A"A|BB\\\\B|CCC)`,
|
|
|
|
`Server:lucene = ("A'A\\"A" OR "BB\\\\B" OR "CCC")`,
|
|
|
|
`Server:glob = {A'A"A,BB\\B,CCC}`,
|
|
|
|
`Server:pipe = A'A"A|BB\\B|CCC`,
|
|
|
|
`Server:distributed = A'A"A,Server=BB\\B,Server=CCC`,
|
|
|
|
`Server:csv = A'A"A,BB\\B,CCC`,
|
2020-08-09 23:38:22 -05:00
|
|
|
`Server:html = A'A"A, BB\\B, CCC`,
|
2020-08-06 07:54:24 -05:00
|
|
|
`Server:json = ["A'A\\"A","BB\\\\B","CCC"]`,
|
|
|
|
`Server:percentencode = %7BA%27A%22A%2CBB%5CB%2CCCC%7D`,
|
|
|
|
`Server:singlequote = 'A\\'A"A','BB\\B','CCC'`,
|
|
|
|
`Server:doublequote = "A'A\\"A","BB\\B","CCC"`,
|
|
|
|
`Server:sqlstring = 'A''A"A','BB\\\B','CCC'`,
|
|
|
|
`Server:date = null`,
|
2020-09-14 01:05:51 -05:00
|
|
|
`Server:text = All`,
|
2020-08-06 07:54:24 -05:00
|
|
|
];
|
|
|
|
|
|
|
|
e2e()
|
|
|
|
.get('.markdown-html li')
|
2020-11-05 08:26:08 -06:00
|
|
|
.should('have.length', 23)
|
2021-01-20 00:59:48 -06:00
|
|
|
.each((element) => {
|
2020-08-06 07:54:24 -05:00
|
|
|
items.push(element.text());
|
|
|
|
})
|
|
|
|
.then(() => {
|
|
|
|
expectedItems.forEach((expected, index) => {
|
|
|
|
expect(items[index]).to.equal(expected);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
},
|
|
|
|
});
|