verify tests

This commit is contained in:
peintnermax
2024-09-12 08:42:48 +02:00
parent 98f221b981
commit c6d815fe79
2 changed files with 39 additions and 2 deletions

View File

@@ -1,11 +1,48 @@
import { stub } from "../support/mock";
describe("/verify", () => {
it("redirects after successful email verification", () => {
it("if no MFA required, redirects to loginname after successful email verification", () => {
stub("zitadel.user.v2.UserService", "VerifyEmail");
cy.visit("/verify?userId=123&code=abc&submit=true");
cy.location("pathname", { timeout: 10_000 }).should("eq", "/loginname");
});
it("if MFA is required, redirects to mfa/set after successful email verification", () => {
stub("zitadel.settings.v2.SettingsService", "GetLoginSettings", {
data: {
settings: {
forceMfa: true,
},
},
});
stub("zitadel.user.v2.UserService", "VerifyEmail");
// stub("zitadel.session.v2.SessionService", "GetSession", {
// data: {
// session: {
// id: "221394658884845598",
// creationDate: new Date("2024-04-04T09:40:55.577Z"),
// changeDate: new Date("2024-04-04T09:40:55.577Z"),
// sequence: 859,
// factors: {
// user: {
// id: "221394658884845598",
// loginName: "john@zitadel.com",
// },
// otpEmail: { // set a factor
// verifiedAt: timestampFromDate(
// new Date("2024-04-04T09:40:55.577Z"),
// ),
// },
// password: undefined,
// webAuthN: undefined,
// intent: undefined,
// },
// metadata: {},
// },
// },
// });
cy.visit("/verify?userId=123&code=abc&submit=true");
cy.location("pathname", { timeout: 10_000 }).should("eq", "/mfa/set");
});
it("shows an error if validation failed", () => {
stub("zitadel.user.v2.UserService", "VerifyEmail", {
code: 3,

View File

@@ -3,5 +3,5 @@ export { NewAuthorizationBearerInterceptor } from "./interceptors";
// TODO: Move this to `./protobuf.ts` and export it from there
export { create, fromJson, toJson } from "@bufbuild/protobuf";
export { TimestampSchema, timestampDate } from "@bufbuild/protobuf/wkt";
export { TimestampSchema, timestampDate, timestampFromDate } from "@bufbuild/protobuf/wkt";
export type { Timestamp } from "@bufbuild/protobuf/wkt";