|
- describe("Password Generation", function() {
- it("can't decrease counter under 0", function() {
- cy.visit("/");
- cy.wait(500);
- cy.get("#decreaseCounter__btn").click();
- cy.get("#decreaseCounter__btn").click();
- cy.get("#passwordCounter").should("have.value", "1");
- });
- it("should generate the appropriate password", function() {
- function clickAndAssertOption(cy, button, password1, password2) {
- cy.get(button).click();
- cy.get("#generatePassword__btn").click();
- cy.get("#generated-password").should("have.value", password1);
- cy.get(button).click();
- cy.get("#generatePassword__btn").click();
- cy.get("#generated-password").should("have.value", password2);
- }
-
- cy.visit("/");
- cy.wait(500);
- cy.get("#siteField")
- .type("lesspass.com")
- .tab();
- cy.get("#login").type("test@lesspass.com");
- cy.get("#passwordField").type("test@lesspass.com");
- cy.wait(500);
- cy.get("#fingerprint .fa-cutlery").should("be.visible");
- cy.get("#fingerprint .fa-subway").should("be.visible");
- cy.get("#fingerprint .fa-plane").should("be.visible");
- cy.get("#generatePassword__btn").click();
- cy.get("#generated-password").should("have.value", "hjV@\\5ULp3bIs,6B");
- cy.get("#decreaseLength__btn").click();
- cy.get("#passwordLength").should("have.value", "15");
- cy.get("#increaseLength__btn").click();
- cy.get("#increaseLength__btn").click();
- cy.get("#passwordLength").should("have.value", "17");
- cy.get("#generatePassword__btn").click();
- cy.get("#generated-password").should("have.value", "hj@r\\ULp3Is62@HB~");
- cy.get("#decreaseLength__btn").click();
- cy.get("#passwordLength").should("have.value", "16");
- cy.get("#increaseCounter__btn").click();
- cy.get("#passwordCounter").should("have.value", "2");
- cy.get("#generatePassword__btn").click();
- cy.get("#generated-password").should("have.value", "#wOxv!q;URh:k82(");
- cy.get("#passwordCounter")
- .clear()
- .type("1");
-
- clickAndAssertOption(
- cy,
- "#lowercase__btn",
- "^>_9>+}OV?[3[_U,",
- "hjV@\\5ULp3bIs,6B"
- );
- clickAndAssertOption(
- cy,
- "#uppercase__btn",
- "^>_9>+}ov?[3[_u,",
- "hjV@\\5ULp3bIs,6B"
- );
- clickAndAssertOption(
- cy,
- "#numbers__btn",
- 'jCmMpNy=T."+u^ZQ',
- "hjV@\\5ULp3bIs,6B"
- );
- clickAndAssertOption(
- cy,
- "#symbols__btn",
- "XAwlOl5mtjGSY6PA",
- "hjV@\\5ULp3bIs,6B"
- );
- });
- it("should have a min length of 5 and max length of 35", function() {
- cy.visit("/");
- cy.wait(500);
- cy.get("#passwordLength")
- .clear()
- .type("35");
- cy.get("#increaseLength__btn").click();
- cy.get("#passwordLength").should("have.value", "35");
- cy.get("#passwordLength")
- .clear()
- .type("5");
- cy.get("#decreaseLength__btn").click();
- cy.get("#passwordLength").should("have.value", "5");
- });
- it("should consider counter as string not hex value nrt_328", function() {
- cy.visit("/");
- cy.wait(500);
- cy.get("#siteField").type("site");
- cy.get("#login").type("login");
- cy.get("#passwordField").type("test");
- cy.get("#passwordCounter")
- .clear()
- .type("10");
- cy.get("#generatePassword__btn").click();
- cy.get("#generated-password").should("have.value", "XFt0F*,r619:+}[.");
- });
- it("should generate password when hit enter nrt_266", function() {
- cy.visit("/");
- cy.wait(500);
- cy.get("#siteField")
- .type("lesspass.com")
- .tab();
- cy.get("#login").type("test@lesspass.com");
- cy.get("#passwordField")
- .type("test@lesspass.com")
- .type("{enter}");
- cy.get("#generated-password").should("have.value", "hjV@\\5ULp3bIs,6B");
- });
- it("should keep site field in sync nrt_441", function() {
- cy.visit("/");
- cy.wait(500);
- cy.get("#login").type("user");
- cy.get("#passwordField").type("password");
- cy.get("#siteField")
- .type("subdomain.domain.com")
- .type("{home}")
- .type("{rightarrow}")
- .type("{backspace}")
- .type("{downarrow}")
- .type("{downarrow}")
- .type("{enter}");
- cy.get("#generatePassword__btn").click();
- cy.get("#generated-password").should("have.value", "ZT^IK2e!t@k$9`*)");
- });
- it("should clear password generated when master password change", function() {
- cy.visit("/");
- cy.wait(500);
- cy.get("#siteField")
- .type("example.org")
- .tab();
- cy.get("#login").type("user");
- cy.get("#passwordField").type("password");
- cy.get("#generatePassword__btn").should("be.visible");
- cy.get("#generatePassword__btn").click();
- cy.get("#copyPasswordButton").should("be.visible");
- cy.get("#generatePassword__btn").should("not.exist");
- cy.get("#passwordField").type("password");
- cy.get("#copyPasswordButton").should("not.be.visible");
- cy.get("#generatePassword__btn").should("be.visible");
- });
- it("should generate password with 2 tabs and enter", function() {
- cy.visit("/");
- cy.wait(500);
- cy.get("#siteField")
- .type("lesspass.com")
- .tab()
- .type("test@lesspass.com")
- .tab()
- .type("test@lesspass.com")
- .type("{enter}");
- cy.get("#generated-password").should("have.value", "hjV@\\5ULp3bIs,6B");
- });
- });
|