mirror of
https://github.com/penpot/penpot.git
synced 2025-08-04 00:38:24 +02:00
👷 e2e tests for dashboard
Including test for signing/singup, projects, files, teams, and misc
This commit is contained in:
parent
26e5d57ced
commit
5103624fe0
32 changed files with 1285 additions and 127 deletions
|
@ -88,7 +88,7 @@ Cypress.Commands.add('clickMultiInViewport', (coords) => {
|
|||
Cypress.Commands.add('clearViewport', () => {
|
||||
cy.get(".viewport-controls").type('{ctrl}a');
|
||||
cy.get(".viewport-controls").type('{del}');
|
||||
cy.window().its("debug").invoke('reset_viewport')
|
||||
cy.window().its("debug").invoke('reset_viewport');
|
||||
})
|
||||
|
||||
Cypress.Commands.add('getBySel', (selector, ...args) => {
|
||||
|
@ -97,4 +97,18 @@ Cypress.Commands.add('getBySel', (selector, ...args) => {
|
|||
|
||||
Cypress.Commands.add('getBySelLike', (selector, ...args) => {
|
||||
return cy.get(`[data-test*=${selector}]`, ...args)
|
||||
})
|
||||
})
|
||||
|
||||
Cypress.Commands.add('uploadBinaryFile', (fileInputSelector, fileName) => {
|
||||
cy.fixture(fileName, "binary")
|
||||
.then(Cypress.Blob.binaryStringToBlob)
|
||||
.then(fileContent => {
|
||||
cy.get(fileInputSelector).attachFile({
|
||||
fileContent,
|
||||
filePath: fileName,
|
||||
encoding: 'utf-8',
|
||||
lastModified: new Date().getTime()
|
||||
});
|
||||
});
|
||||
})
|
||||
|
||||
|
|
|
@ -5,8 +5,71 @@ export const checkOnboardingSlide = (number, checkSkip) => {
|
|||
cy.getBySel(`slide-${number}-btn`).should("exist");
|
||||
cy.getBySel(`slide-${number}-btn`).click();
|
||||
};
|
||||
export const deleteFirstProject = () => {
|
||||
cy.get('.project').first().find("[data-test=project-options]").click();
|
||||
cy.wait(500);
|
||||
cy.get('.project').first().find("[data-test=project-delete]").click();
|
||||
cy.wait(500);
|
||||
cy.get('.accept-button').click();
|
||||
}
|
||||
|
||||
export const createProject = (projectName="") => {
|
||||
cy.getBySel("new-project-button").click();
|
||||
cy.wait(500);
|
||||
cy.get('.project').first().find(".edit-wrapper").type(projectName + "{enter}");
|
||||
cy.wait(500);
|
||||
}
|
||||
|
||||
|
||||
export const deleteFirstFile = () => {
|
||||
cy.get('.menu')
|
||||
.first()
|
||||
.trigger('mouseover')
|
||||
.click();
|
||||
cy.getBySel("file-delete").click();
|
||||
cy.get('.accept-button').click();
|
||||
}
|
||||
|
||||
|
||||
export const createFile = (fileName="", projectNum=0) => {
|
||||
cy.getBySel("new-file").click();
|
||||
cy.wait(500);
|
||||
if (fileName !=""){
|
||||
cy.get('.menu')
|
||||
.first()
|
||||
.trigger('mouseover')
|
||||
.click();
|
||||
cy.getBySel("file-rename").click();
|
||||
cy.get(".edit-wrapper").type(fileName + "{enter}");
|
||||
//TODO: Bug workaround. When a file is selected, it doesn't open context menu
|
||||
cy.get(".dashboard-grid").click();
|
||||
}
|
||||
}
|
||||
|
||||
export const createTeam = (teamName) => {
|
||||
cy.get(".current-team").click();
|
||||
cy.getBySel("create-new-team").click();
|
||||
cy.get("#name").type(teamName);
|
||||
cy.get("input[type=submit]").click();
|
||||
cy.wait(500);
|
||||
}
|
||||
|
||||
export const deleteCurrentTeam = () => {
|
||||
cy.get(".icon-actions").first().click();
|
||||
cy.getBySel("delete-team").click();
|
||||
cy.get(".accept-button").click();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
export const goToSlideByNumber = (number) => {
|
||||
cy.get(`.step-dots li:nth-child(${number})`).click();
|
||||
cy.getBySel(`slide-${number -1}-btn`).should("exist");
|
||||
};
|
||||
|
||||
export const deleteFirstFont = () => {
|
||||
cy.get(".font-item .options").first().click();
|
||||
cy.getBySel("font-delete").click();
|
||||
cy.get(".accept-button").click();
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue