forked from cypress-io/cypress-realworld-app
-
Notifications
You must be signed in to change notification settings - Fork 0
/
auth0.spec.ts
47 lines (37 loc) · 1.66 KB
/
auth0.spec.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import { isMobile } from "../../support/utils";
if (Cypress.env("auth0_username")) {
describe("Auth0", function () {
beforeEach(function () {
cy.task("db:seed");
cy.intercept("POST", "/graphql").as("createBankAccount");
cy.loginToAuth0(Cypress.env("auth0_username"), Cypress.env("auth0_password"));
cy.visit("/");
});
it("should allow a visitor to login, onboard and logout", function () {
cy.contains("Get Started").should("be.visible");
// Onboarding
cy.getBySel("user-onboarding-dialog").should("be.visible");
cy.getBySel("user-onboarding-next").click();
cy.getBySel("user-onboarding-dialog-title").should("contain", "Create Bank Account");
cy.getBySelLike("bankName-input").type("The Best Bank");
cy.getBySelLike("accountNumber-input").type("123456789");
cy.getBySelLike("routingNumber-input").type("987654321");
cy.getBySelLike("submit").click();
cy.getBySel("user-onboarding-dialog-title").should("contain", "Finished");
cy.getBySel("user-onboarding-dialog-content").should("contain", "You're all set!");
cy.getBySel("user-onboarding-next").click();
cy.getBySel("transaction-list").should("be.visible");
// Logout User
if (isMobile()) {
cy.getBySel("sidenav-toggle").click();
}
cy.getBySel("sidenav-signout").click();
cy.location("pathname").should("eq", "/");
});
// This test should pass without needing to go through the login flow again,
// due to the session data being cached by cy.loginToAuth0.
it("shows onboarding", function () {
cy.contains("Get Started").should("be.visible");
});
});
}