bb1af8b31c
- Added Cypress as a dependency for end-to-end testing. - Introduced new npm scripts for running Cypress tests and starting the development server for testing. - Updated package-lock.json to reflect the new dependencies and their versions.
38 lines
966 B
TypeScript
38 lines
966 B
TypeScript
/// <reference types="cypress" />
|
|
|
|
const AUTH_COOKIE_KEYS = {
|
|
accessToken: "TENDER_PANEL_token",
|
|
refreshToken: "TENDER_PANEL_refresh_token",
|
|
user: "TENDER_PANEL_user",
|
|
} as const;
|
|
|
|
Cypress.Commands.add("loginAsAdmin", () => {
|
|
cy.session(
|
|
"admin-session",
|
|
() => {
|
|
cy.visit("/auth/sign-in");
|
|
|
|
cy.setCookie(AUTH_COOKIE_KEYS.accessToken, "e2e-access-token");
|
|
cy.setCookie(AUTH_COOKIE_KEYS.refreshToken, "e2e-refresh-token");
|
|
cy.setCookie(
|
|
AUTH_COOKIE_KEYS.user,
|
|
encodeURIComponent(
|
|
JSON.stringify({
|
|
id: "507f1f77bcf86cd799439012",
|
|
username: "e2e-admin",
|
|
email: "e2e-admin@example.com",
|
|
role: "admin",
|
|
}),
|
|
),
|
|
);
|
|
},
|
|
{
|
|
validate: () => {
|
|
cy.getCookie(AUTH_COOKIE_KEYS.accessToken).should("exist");
|
|
cy.getCookie(AUTH_COOKIE_KEYS.user).should("exist");
|
|
},
|
|
cacheAcrossSpecs: true,
|
|
},
|
|
);
|
|
});
|