* add eslint config * migrate autoLock to features * migrate teamService to features * migrate userCreationService * migrate insights services to features * migrate ProfileRepository * update imports * migrate filter segmen tests * migrate filter segment repository * migrate getBusyTimes * migrate getLocaleFromRequest * refactor csvUtils * make filename clearer * migrate getLuckyUser integration test * migrate autoLock test to features * wip * refactors * migrate useBookerUrl * migrate more * wip * Migrate eventTypeRepository * membership repository * update imports * update imports * migrate * move organization repository * update imports * update imports * wip * wip * wip * wip * wip * wip * wip * wip * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix tests * fix type checks * fix * fix * migrate * update imports * fix tests * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix * fix
42 lines
1.4 KiB
TypeScript
42 lines
1.4 KiB
TypeScript
import type { Mock } from "vitest";
|
|
import { describe, expect, test, vi, afterEach } from "vitest";
|
|
|
|
import { WatchlistRepository } from "@calcom/features/watchlist/watchlist.repository";
|
|
|
|
import { checkIfFreeEmailDomain } from "./checkIfFreeEmailDomain";
|
|
|
|
vi.mock("@calcom/features/watchlist/watchlist.repository", () => {
|
|
return {
|
|
WatchlistRepository: vi.fn().mockImplementation(() => ({
|
|
getFreeEmailDomainInWatchlist: vi.fn().mockResolvedValue(undefined),
|
|
})),
|
|
};
|
|
});
|
|
|
|
describe("checkIfFreeEmailDomain", () => {
|
|
test("If gmail should return true", async () => {
|
|
expect(await checkIfFreeEmailDomain("test@gmail.com")).toBe(true);
|
|
});
|
|
test("If outlook should return true", async () => {
|
|
expect(await checkIfFreeEmailDomain("test@outlook.com")).toBe(true);
|
|
});
|
|
test("If there's no email domain return as if it was a free email domain", async () => {
|
|
expect(await checkIfFreeEmailDomain("test@")).toBe(true);
|
|
});
|
|
test("If free email domain in watchlist, should return true", async () => {
|
|
const WatchlistRepoMock = WatchlistRepository as Mock;
|
|
|
|
await checkIfFreeEmailDomain("test@freedomain.com");
|
|
|
|
expect(WatchlistRepoMock).toHaveBeenCalled();
|
|
|
|
const mockInstance = WatchlistRepoMock.mock.results.at(-1)?.value;
|
|
|
|
expect(mockInstance.getFreeEmailDomainInWatchlist).toHaveBeenCalledWith("freedomain.com");
|
|
});
|
|
|
|
afterEach(() => {
|
|
vi.clearAllMocks();
|
|
});
|
|
});
|