Chore: remove scenario wrapping in cypress tests (#74674)

* remove scenario wrapping in cypress tests

* remove more hardcoded logins

* don't forget the various suite!

* make sure we log in for every test

* fix afterAll revert

* stability
This commit is contained in:
Ashley Harrison
2023-09-13 13:24:20 +01:00
committed by GitHub
parent f3b6d01306
commit ba7f77f25d
56 changed files with 350 additions and 465 deletions
-2
View File
@@ -1,5 +1,3 @@
import { e2e } from '../index';
// @todo this actually returns type `Cypress.Chainable`
const get = (key: string): any =>
cy.wrap({ getLocalStorage: () => localStorage.getItem(key) }, { log: false }).invoke('getLocalStorage');
-53
View File
@@ -1,53 +0,0 @@
import { e2e } from '../';
export interface ScenarioArguments {
describeName: string;
itName: string;
scenario: Function;
skipScenario?: boolean;
addScenarioDataSource?: boolean;
addScenarioDashBoard?: boolean;
loginViaApi?: boolean;
}
export const e2eScenario = ({
describeName,
itName,
scenario,
skipScenario = false,
addScenarioDataSource = false,
addScenarioDashBoard = false,
loginViaApi = true,
}: ScenarioArguments) => {
describe(describeName, () => {
if (skipScenario) {
it.skip(itName, () => scenario());
} else {
before(() => {
cy.session(
'login',
() => {
e2e.flows.login(e2e.env('USERNAME'), e2e.env('PASSWORD'), loginViaApi);
},
{
cacheAcrossSpecs: true,
}
);
e2e.flows.setDefaultUserPreferences();
});
beforeEach(() => {
if (addScenarioDataSource) {
e2e.flows.addDataSource();
}
if (addScenarioDashBoard) {
e2e.flows.addDashboard();
}
});
afterEach(() => e2e.flows.revertAllChanges());
it(itName, () => scenario());
}
});
};
-1
View File
@@ -1,6 +1,5 @@
import { DeleteDashboardConfig } from '../flows/deleteDashboard';
import { DeleteDataSourceConfig } from '../flows/deleteDataSource';
import { e2e } from '../index';
export interface ScenarioContext {
addedDashboards: DeleteDashboardConfig[];