34 lines
1.3 KiB
TypeScript
34 lines
1.3 KiB
TypeScript
import { test, expect } from '@grafana/plugin-e2e';
|
|
import { MyDataSourceOptions, MySecureJsonData } from '../src/types';
|
|
|
|
test('"Save & test" should be successful when configuration is valid', async ({
|
|
createDataSourceConfigPage,
|
|
readProvisionedDataSource,
|
|
selectors,
|
|
page,
|
|
}) => {
|
|
const ds = await readProvisionedDataSource({ fileName: 'datasources.yml' });
|
|
const configPage = await createDataSourceConfigPage({ type: ds.type });
|
|
const healthCheckPath = `${selectors.apis.DataSource.proxy(
|
|
configPage.datasource.uid,
|
|
configPage.datasource.id.toString()
|
|
)}/health`;
|
|
await page.route(healthCheckPath, async (route) => await route.fulfill({ status: 200, body: 'OK' }));
|
|
await expect(configPage.saveAndTest({ path: healthCheckPath })).toBeOK();
|
|
});
|
|
|
|
test('"Save & test" should display success alert box when config is valid', async ({
|
|
createDataSourceConfigPage,
|
|
readProvisionedDataSource,
|
|
selectors,
|
|
}) => {
|
|
const ds = await readProvisionedDataSource({ fileName: 'datasources.yml' });
|
|
const configPage = await createDataSourceConfigPage({ type: ds.type });
|
|
const healthCheckPath = `${selectors.apis.DataSource.proxy(
|
|
configPage.datasource.uid,
|
|
configPage.datasource.id.toString()
|
|
)}/health`;
|
|
await expect(configPage.saveAndTest({ path: healthCheckPath })).not.toBeOK();
|
|
await expect(configPage).toHaveAlert('error');
|
|
});
|