Move Cypress directory and convert it to JavaScript (#2170)

This commit is contained in:
Louis Lam
2022-10-04 22:23:57 +08:00
committed by GitHub
parent 16b2cf0e89
commit afbc283423
18 changed files with 75 additions and 75 deletions

View File

@@ -0,0 +1,18 @@
const actor = require("../support/actors/actor");
const userData = require("../support/const/user-data");
const dashboardPage = require("../support/pages/dashboard-page");
const setupPage = require("../support/pages/setup-page");
describe("user can create a new account on setup page", () => {
before(() => {
cy.visit("/setup");
});
it("user can create new account", () => {
cy.url().should("be.equal", setupPage.SetupPage.url);
actor.actor.setupTask.fillAndSubmitSetupForm(userData.DEFAULT_USER_DATA.username, userData.DEFAULT_USER_DATA.password, userData.DEFAULT_USER_DATA.password);
cy.url().should("be.equal", dashboardPage.DashboardPage.url);
cy.get('[role="alert"]')
.should("be.visible")
.and("contain.text", "Added Successfully.");
});
});

View File

View File

@@ -0,0 +1,8 @@
const setupTask = require("../tasks/setup-task");
class Actor {
constructor() {
this.setupTask = new setupTask.SetupTask();
}
}
const actor = new Actor();
exports.actor = actor;

View File

View File

@@ -0,0 +1,4 @@
exports.DEFAULT_USER_DATA = {
username: "testuser",
password: "testuser123",
};

View File

@@ -0,0 +1 @@
require("./commands");

View File

@@ -0,0 +1,3 @@
exports.DashboardPage = {
url: Cypress.env("baseUrl") + "/dashboard",
};

View File

@@ -0,0 +1,7 @@
exports.SetupPage = {
url: Cypress.env("baseUrl") + "/setup",
usernameInput: '[data-cy="username-input"]',
passWordInput: '[data-cy="password-input"]',
passwordRepeatInput: '[data-cy="password-repeat-input"]',
submitSetupForm: '[data-cy="submit-setup-form"]',
};

View File

@@ -0,0 +1,11 @@
const setupPage = require("../pages/setup-page");
class SetupTask {
fillAndSubmitSetupForm(username, password, passwordRepeat) {
cy.get(setupPage.SetupPage.usernameInput).type(username);
cy.get(setupPage.SetupPage.passWordInput).type(password);
cy.get(setupPage.SetupPage.passwordRepeatInput).type(passwordRepeat);
cy.get(setupPage.SetupPage.submitSetupForm).click();
}
}
exports.SetupTask = SetupTask;