126 lines
4.6 KiB
TypeScript
126 lines
4.6 KiB
TypeScript
|
describe("Форма Входа", () => {
|
|||
|
beforeEach(() => {
|
|||
|
cy.visit("http://localhost:3000");
|
|||
|
cy.wait(1000);
|
|||
|
cy.contains("Личный кабинет").click();
|
|||
|
});
|
|||
|
|
|||
|
it("должна успешно входить с правильными учетными данными", () => {
|
|||
|
const login = "valid_user@example.com";
|
|||
|
const password = "valid_password";
|
|||
|
|
|||
|
cy.get("#login").type(login);
|
|||
|
cy.get("#password").type(password);
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.wait(2000);
|
|||
|
cy.url().should("include", "http://localhost:3000/tariffs");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать два сообщение об ошибке при отсутствии полей", () => {
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.wait(2000);
|
|||
|
cy.get("#password-helper-text").should("contain", "Поле обязательно");
|
|||
|
cy.get("#login-helper-text").should("contain", "Поле обязательно");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать сообщение об ошибке при отсутствии пароля", () => {
|
|||
|
cy.get("#login").type("valid_email@example.com");
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.get("#password-helper-text").should("contain", "Поле обязательно");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать сообщение об ошибке при отсутствии Логина", () => {
|
|||
|
cy.get("#password").type("valid_password");
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.get("#login-helper-text").should("contain", "Поле обязательно");
|
|||
|
});
|
|||
|
});
|
|||
|
|
|||
|
describe("Форма регистрации", () => {
|
|||
|
beforeEach(() => {
|
|||
|
cy.visit("http://localhost:3000");
|
|||
|
cy.wait(1000);
|
|||
|
cy.contains("Личный кабинет").click();
|
|||
|
cy.contains("Регистрация").click();
|
|||
|
});
|
|||
|
|
|||
|
it("должна регистрировать нового пользователя с правильными данными", () => {
|
|||
|
const login = Cypress._.random(1000) + "@example.com";
|
|||
|
const password = "valid_password";
|
|||
|
|
|||
|
cy.get("#login").type(login);
|
|||
|
cy.get("#password").type(password);
|
|||
|
cy.get("#repeatPassword").type(password);
|
|||
|
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
cy.wait(5000);
|
|||
|
|
|||
|
cy.url().should("include", "http://localhost:3000/tariffs");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать ошибку при отсутсвии логина", () => {
|
|||
|
cy.get("#password").type("valid_password");
|
|||
|
cy.get("#repeatPassword").type("valid_password");
|
|||
|
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.get("#login-helper-text").should("contain", "Поле обязательно");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать ошибку при отсутствии пароля", () => {
|
|||
|
cy.get("#login").type("valid_login");
|
|||
|
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.get("#password-helper-text").should("contain", "Поле обязательно");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать ошибку при отсутствии поля Повторения пароля", () => {
|
|||
|
cy.get("#login").type("valid_login");
|
|||
|
cy.get("#password").type("valid_password");
|
|||
|
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.get("#repeatPassword-helper-text").should("contain", "Повторите пароль");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать ошибку при некоректном пароле", () => {
|
|||
|
cy.get("#login").type("valid_log");
|
|||
|
cy.get("#password").type("valid@12_-_@@password");
|
|||
|
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.get("#password-helper-text").should("contain", "Некорректные символы");
|
|||
|
|
|||
|
cy.get("#repeatPassword-helper-text").should("contain", "Повторите пароль");
|
|||
|
});
|
|||
|
|
|||
|
it("должна отображать ошибку при несовпадении паролей", () => {
|
|||
|
cy.get("#login").type("valid_login");
|
|||
|
cy.get("#password").type("valid_password");
|
|||
|
cy.get("#repeatPassword").type("invalidPassword");
|
|||
|
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.get("#repeatPassword-helper-text").should("contain", "Пароли не совпадают");
|
|||
|
});
|
|||
|
|
|||
|
it("попытка отправки запроса при уже зарегистрированном пользователе", () => {
|
|||
|
const login = "valid_user@example.com";
|
|||
|
const password = "valid_password";
|
|||
|
|
|||
|
cy.get("#login").type(login);
|
|||
|
cy.get("#password").type(password);
|
|||
|
cy.get("#repeatPassword").type(password);
|
|||
|
|
|||
|
cy.get('button[type="submit"]').click();
|
|||
|
|
|||
|
cy.wait(5000);
|
|||
|
cy.contains("user with this login is exist");
|
|||
|
});
|
|||
|
});
|